Subject: linux-next: build failure after merge of the net-next tree

From: Stephen Rothwell <[email-masked]>
Date: Mon, 17 Nov 2014 13:34:04 +1100

Hi all,

After merging the net-next tree, today's linux-next build (x86_64 allmodconfig)
failed like this:

In file included from include/linux/printk.h:6:0,
                 from include/linux/kernel.h:13,
                 from net/openvswitch/flow.h:23,
                 from net/openvswitch/flow_netlink.c:21:
net/openvswitch/flow_netlink.c: In function 'ovs_key_from_nlattrs':
include/linux/kern_levels.h:4:18: error: called object is not a function or function pointer
 #define KERN_SOH "\001"  /* ASCII Start Of Header */
                  ^
include/linux/kern_levels.h:13:19: note: in expansion of macro 'KERN_SOH'
 #define KERN_INFO KERN_SOH "6" /* informational */
                   ^
include/linux/printk.h:247:9: note: in expansion of macro 'KERN_INFO'
  printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__)
         ^
net/openvswitch/datapath.h:205:3: note: in expansion of macro 'pr_info'
   pr_info("netlink: " fmt "\n", ##__VA_ARGS__); \
   ^
net/openvswitch/flow_netlink.c:777:4: note: in expansion of macro 'OVS_NLERR'
    OVS_NLERR("IPv6 flow label %x is out of range (max=%x).\n",
    ^
net/openvswitch/datapath.h:205:27: error: expected ')' before string constant
   pr_info("netlink: " fmt "\n", ##__VA_ARGS__); \
                           ^
net/openvswitch/flow_netlink.c:19:41: note: in definition of macro 'pr_fmt'
 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
                                         ^
net/openvswitch/datapath.h:205:3: note: in expansion of macro 'pr_info'
   pr_info("netlink: " fmt "\n", ##__VA_ARGS__); \
   ^
net/openvswitch/flow_netlink.c:777:4: note: in expansion of macro 'OVS_NLERR'
    OVS_NLERR("IPv6 flow label %x is out of range (max=%x).\n",
    ^

Caused by commit 05da5898a96c ("openvswitch: Add support for
OVS_FLOW_ATTR_PROBE") interacting with commit fecaef85f718
("openvswitch: Validate IPv6 flow key and mask values") from the net
tree.

I applied the following merge fix patch:

From: Stephen Rothwell <[email-masked]>
Date: Mon, 17 Nov 2014 13:31:33 +1100
Subject: [PATCH] openvswitch: fix up for OVS_NLERR API change

Signed-off-by: Stephen Rothwell <[email-masked]>
---
 net/openvswitch/flow_netlink.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/net/openvswitch/flow_netlink.c b/net/openvswitch/flow_netlink.c
index 259b2f1ebd0d..45bdcf596414 100644
--- a/net/openvswitch/flow_netlink.c
+++ b/net/openvswitch/flow_netlink.c
@@ -774,7 +774,7 @@ static int ovs_key_from_nlattrs(struct sw_flow_match *match, u64 attrs,
 		}
 
 		if (ipv6_key->ipv6_label & htonl(0xFFF00000)) {
-			OVS_NLERR("IPv6 flow label %x is out of range (max=%x).\n",
+			OVS_NLERR(log, "IPv6 flow label %x is out of range (max=%x).\n",
 				  ntohl(ipv6_key->ipv6_label), (1 << 20) - 1);
 			return -EINVAL;
 		}
-- 
2.1.3

-- 
Cheers,
Stephen Rothwell                    [email-masked]