lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20150728112623.3ec0b2b5@canb.auug.org.au>
Date:	Tue, 28 Jul 2015 11:26:23 +1000
From:	Stephen Rothwell <sfr@...b.auug.org.au>
To:	David Miller <davem@...emloft.net>, <netdev@...r.kernel.org>
Cc:	linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
	Florian Westphal <fw@...len.de>
Subject: linux-next: manual merge of the net-next tree with the net tree

Hi all,

Today's linux-next merge of the net-next tree got a conflict in:

  net/ipv4/ip_fragment.c

between commit:

  0e60d245a0be ("inet: frag: change *_frag_mem_limit functions to take netns_frags as argument")

from the net tree and commit:

  14fe22e33462 ("Revert "ipv4: use skb coalescing in defragmentation"")

from the net-next tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

-- 
Cheers,
Stephen Rothwell                    sfr@...b.auug.org.au

diff --cc net/ipv4/ip_fragment.c
index 921138f6c97c,f44bccc42494..000000000000
--- a/net/ipv4/ip_fragment.c
+++ b/net/ipv4/ip_fragment.c
@@@ -587,35 -586,22 +586,22 @@@ static int ip_frag_reasm(struct ipq *qp
  		head->len -= clone->len;
  		clone->csum = 0;
  		clone->ip_summed = head->ip_summed;
 -		add_frag_mem_limit(&qp->q, clone->truesize);
 +		add_frag_mem_limit(qp->q.net, clone->truesize);
  	}
  
+ 	skb_shinfo(head)->frag_list = head->next;
  	skb_push(head, head->data - skb_network_header(head));
  
- 	sum_truesize = head->truesize;
- 	for (fp = head->next; fp;) {
- 		bool headstolen;
- 		int delta;
- 		struct sk_buff *next = fp->next;
- 
- 		sum_truesize += fp->truesize;
+ 	for (fp=head->next; fp; fp = fp->next) {
+ 		head->data_len += fp->len;
+ 		head->len += fp->len;
  		if (head->ip_summed != fp->ip_summed)
  			head->ip_summed = CHECKSUM_NONE;
  		else if (head->ip_summed == CHECKSUM_COMPLETE)
  			head->csum = csum_add(head->csum, fp->csum);
- 
- 		if (skb_try_coalesce(head, fp, &headstolen, &delta)) {
- 			kfree_skb_partial(fp, headstolen);
- 		} else {
- 			if (!skb_shinfo(head)->frag_list)
- 				skb_shinfo(head)->frag_list = fp;
- 			head->data_len += fp->len;
- 			head->len += fp->len;
- 			head->truesize += fp->truesize;
- 		}
- 		fp = next;
+ 		head->truesize += fp->truesize;
  	}
- 	sub_frag_mem_limit(qp->q.net, sum_truesize);
 -	sub_frag_mem_limit(&qp->q, head->truesize);
++	sub_frag_mem_limit(qp->q.net, head->truesize);
  
  	head->next = NULL;
  	head->dev = dev;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ