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

login
register
mail settings
Submitter Stephen Rothwell
Date April 19, 2013, 3:21 a.m.
Message ID <20130419132127.05ea53adec329ca794d62be7@canb.auug.org.au>
Download mbox | patch
Permalink /patch/237830/
State Accepted
Delegated to: David Miller
Headers show

Comments

Stephen Rothwell - April 19, 2013, 3:21 a.m.
Hi all,

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

net/batman-adv/network-coding.c: In function 'batadv_nc_skb_store_sniffed_unicast':
net/batman-adv/network-coding.c:1487:2: warning: passing argument 1 of 'batadv_is_my_mac' from incompatible pointer type [enabled by default]
net/batman-adv/main.h:168:5: note: expected 'struct batadv_priv *' but argument is of type 'unsigned char *'
net/batman-adv/network-coding.c:1487:2: error: too few arguments to function 'batadv_is_my_mac'
net/batman-adv/main.h:168:5: note: declared here
net/batman-adv/network-coding.c: In function 'batadv_nc_skb_decode_packet':
net/batman-adv/network-coding.c:1540:2: warning: passing argument 1 of 'batadv_is_my_mac' from incompatible pointer type [enabled by default]
net/batman-adv/main.h:168:5: note: expected 'struct batadv_priv *' but argument is of type 'uint8_t *'
net/batman-adv/network-coding.c:1540:2: error: too few arguments to function 'batadv_is_my_mac'
net/batman-adv/main.h:168:5: note: declared here
net/batman-adv/network-coding.c: In function 'batadv_nc_find_decoding_packet':
net/batman-adv/network-coding.c:1611:2: warning: passing argument 1 of 'batadv_is_my_mac' from incompatible pointer type [enabled by default]
net/batman-adv/main.h:168:5: note: expected 'struct batadv_priv *' but argument is of type 'uint8_t *'
net/batman-adv/network-coding.c:1611:2: error: too few arguments to function 'batadv_is_my_mac'
net/batman-adv/main.h:168:5: note: declared here
net/batman-adv/network-coding.c: In function 'batadv_nc_recv_coded_packet':
net/batman-adv/network-coding.c:1678:2: warning: passing argument 1 of 'batadv_is_my_mac' from incompatible pointer type [enabled by default]
net/batman-adv/main.h:168:5: note: expected 'struct batadv_priv *' but argument is of type 'unsigned char *'
net/batman-adv/network-coding.c:1678:2: error: too few arguments to function 'batadv_is_my_mac'
net/batman-adv/main.h:168:5: note: declared here
net/batman-adv/network-coding.c:1679:6: warning: passing argument 1 of 'batadv_is_my_mac' from incompatible pointer type [enabled by default]
net/batman-adv/main.h:168:5: note: expected 'struct batadv_priv *' but argument is of type 'uint8_t *'
net/batman-adv/network-coding.c:1679:6: error: too few arguments to function 'batadv_is_my_mac'
net/batman-adv/main.h:168:5: note: declared here
net/batman-adv/network-coding.c:1683:2: warning: passing argument 1 of 'batadv_is_my_mac' from incompatible pointer type [enabled by default]
net/batman-adv/main.h:168:5: note: expected 'struct batadv_priv *' but argument is of type 'uint8_t *'
net/batman-adv/network-coding.c:1683:2: error: too few arguments to function 'batadv_is_my_mac'
net/batman-adv/main.h:168:5: note: declared here

Caused by commits 612d2b4fe0a1 ("batman-adv: network coding - save
overheard and tx packets for decoding") and 2df5278b0267 ("batman-adv:
network coding - receive coded packets and decode them") from the
net-next tree interacting with commit fe8a93b95145 ("batman-adv: make
is_my_mac() check for the current mesh only") from the net tree.

I added the following merge fix patch and can carry it as necessary:

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Fri, 19 Apr 2013 13:13:25 +1000
Subject: [PATCH] batman-adv: merge fix for batadv_is_my_mac() API change

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 net/batman-adv/network-coding.c | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)
Antonio Quartulli - April 19, 2013, 7:34 a.m.
Hi Stephen,

On Fri, Apr 19, 2013 at 01:21:27PM +1000, Stephen Rothwell wrote:
> 
> Caused by commits 612d2b4fe0a1 ("batman-adv: network coding - save
> overheard and tx packets for decoding") and 2df5278b0267 ("batman-adv:
> network coding - receive coded packets and decode them") from the
> net-next tree interacting with commit fe8a93b95145 ("batman-adv: make
> is_my_mac() check for the current mesh only") from the net tree.
> 
> I added the following merge fix patch and can carry it as necessary:


thank you very much for taking care of this.
However, as I wrote to David in the pull request which generated this noise
(http://patchwork.ozlabs.org/patch/237363/), I am now going to send a second
pull request which fixes this problem properly and adds the related kernel doc.

Your patch looks good, but I'd prefer to send my already prepared pull request.

Is it ok with you?

Cheers,
Stephen Rothwell - April 19, 2013, 8:13 a.m.
Hi Antonio,

On Fri, 19 Apr 2013 09:34:09 +0200 Antonio Quartulli <ordex@autistici.org> wrote:
>
> Your patch looks good, but I'd prefer to send my already prepared pull request.
> 
> Is it ok with you?

Its entirely up to Dave how/if he fixes this up.  He could just leave it
to Linus, though he would usually pull the net tree into the net-next
tree after Linus merges the net tree - in which case, this should be
fixed in that merge.

i.e. ask Dave :-)
David Miller - April 23, 2013, 12:39 a.m.
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Fri, 19 Apr 2013 13:21:27 +1000

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

I also made sure this got fixed in the merge commit.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/net/batman-adv/network-coding.c b/net/batman-adv/network-coding.c
index 6b9a544..382db5e 100644
--- a/net/batman-adv/network-coding.c
+++ b/net/batman-adv/network-coding.c
@@ -1484,7 +1484,7 @@  void batadv_nc_skb_store_sniffed_unicast(struct batadv_priv *bat_priv,
 {
 	struct ethhdr *ethhdr = (struct ethhdr *)skb_mac_header(skb);
 
-	if (batadv_is_my_mac(ethhdr->h_dest))
+	if (batadv_is_my_mac(bat_priv, ethhdr->h_dest))
 		return;
 
 	/* Set data pointer to MAC header to mimic packets from our tx path */
@@ -1496,6 +1496,7 @@  void batadv_nc_skb_store_sniffed_unicast(struct batadv_priv *bat_priv,
 /**
  * batadv_nc_skb_decode_packet - decode given skb using the decode data stored
  *  in nc_packet
+ * @bat_priv: the bat priv with all the soft interface information
  * @skb: unicast skb to decode
  * @nc_packet: decode data needed to decode the skb
  *
@@ -1503,7 +1504,7 @@  void batadv_nc_skb_store_sniffed_unicast(struct batadv_priv *bat_priv,
  * in case of an error.
  */
 static struct batadv_unicast_packet *
-batadv_nc_skb_decode_packet(struct sk_buff *skb,
+batadv_nc_skb_decode_packet(struct batadv_priv *bat_priv, struct sk_buff *skb,
 			    struct batadv_nc_packet *nc_packet)
 {
 	const int h_size = sizeof(struct batadv_unicast_packet);
@@ -1537,7 +1538,7 @@  batadv_nc_skb_decode_packet(struct sk_buff *skb,
 	/* Select the correct unicast header information based on the location
 	 * of our mac address in the coded_packet header
 	 */
-	if (batadv_is_my_mac(coded_packet_tmp.second_dest)) {
+	if (batadv_is_my_mac(bat_priv, coded_packet_tmp.second_dest)) {
 		/* If we are the second destination the packet was overheard,
 		 * so the Ethernet address must be copied to h_dest and
 		 * pkt_type changed from PACKET_OTHERHOST to PACKET_HOST
@@ -1608,7 +1609,7 @@  batadv_nc_find_decoding_packet(struct batadv_priv *bat_priv,
 
 	/* Select the correct packet id based on the location of our mac-addr */
 	dest = ethhdr->h_source;
-	if (!batadv_is_my_mac(coded->second_dest)) {
+	if (!batadv_is_my_mac(bat_priv, coded->second_dest)) {
 		source = coded->second_source;
 		packet_id = coded->second_crc;
 	} else {
@@ -1675,12 +1676,12 @@  static int batadv_nc_recv_coded_packet(struct sk_buff *skb,
 	ethhdr = (struct ethhdr *)skb_mac_header(skb);
 
 	/* Verify frame is destined for us */
-	if (!batadv_is_my_mac(ethhdr->h_dest) &&
-	    !batadv_is_my_mac(coded_packet->second_dest))
+	if (!batadv_is_my_mac(bat_priv, ethhdr->h_dest) &&
+	    !batadv_is_my_mac(bat_priv, coded_packet->second_dest))
 		return NET_RX_DROP;
 
 	/* Update stat counter */
-	if (batadv_is_my_mac(coded_packet->second_dest))
+	if (batadv_is_my_mac(bat_priv, coded_packet->second_dest))
 		batadv_inc_counter(bat_priv, BATADV_CNT_NC_SNIFFED);
 
 	nc_packet = batadv_nc_find_decoding_packet(bat_priv, ethhdr,
@@ -1698,7 +1699,7 @@  static int batadv_nc_recv_coded_packet(struct sk_buff *skb,
 		goto free_nc_packet;
 
 	/* Decode the packet */
-	unicast_packet = batadv_nc_skb_decode_packet(skb, nc_packet);
+	unicast_packet = batadv_nc_skb_decode_packet(bat_priv, skb, nc_packet);
 	if (!unicast_packet) {
 		batadv_inc_counter(bat_priv, BATADV_CNT_NC_DECODE_FAILED);
 		goto free_nc_packet;