* debian/changelog: Set version to 3.2.12-1.
* debian/patches: Remove merged and fix-up patches. svn path=/dists/sid/linux-2.6/; revision=18857
This commit is contained in:
parent
2ccd3aadf0
commit
73c104dd0d
|
@ -1,4 +1,8 @@
|
||||||
linux-2.6 (3.2.10-2) UNRELEASED; urgency=low
|
linux-2.6 (3.2.12-1) UNRELEASED; urgency=low
|
||||||
|
|
||||||
|
* New upstream stable update:
|
||||||
|
http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.11
|
||||||
|
http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.12
|
||||||
|
|
||||||
[ Ben Hutchings ]
|
[ Ben Hutchings ]
|
||||||
* [powerpc] Enable KVM_GUEST
|
* [powerpc] Enable KVM_GUEST
|
||||||
|
|
|
@ -1,142 +0,0 @@
|
||||||
From: Eric Dumazet <eric.dumazet@gmail.com>
|
|
||||||
Date: Thu, 23 Feb 2012 10:55:02 +0000
|
|
||||||
Subject: [PATCH] ipsec: be careful of non existing mac headers
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
commit 03606895cd98c0a628b17324fd7b5ff15db7e3cd upstream.
|
|
||||||
|
|
||||||
Niccolo Belli reported ipsec crashes in case we handle a frame without
|
|
||||||
mac header (atm in his case)
|
|
||||||
|
|
||||||
Before copying mac header, better make sure it is present.
|
|
||||||
|
|
||||||
Bugzilla reference: https://bugzilla.kernel.org/show_bug.cgi?id=42809
|
|
||||||
|
|
||||||
Reported-by: Niccolò Belli <darkbasic@linuxsystems.it>
|
|
||||||
Tested-by: Niccolò Belli <darkbasic@linuxsystems.it>
|
|
||||||
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
|
|
||||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
||||||
---
|
|
||||||
include/linux/skbuff.h | 10 ++++++++++
|
|
||||||
net/ipv4/xfrm4_mode_beet.c | 5 +----
|
|
||||||
net/ipv4/xfrm4_mode_tunnel.c | 6 ++----
|
|
||||||
net/ipv6/xfrm6_mode_beet.c | 6 +-----
|
|
||||||
net/ipv6/xfrm6_mode_tunnel.c | 6 ++----
|
|
||||||
5 files changed, 16 insertions(+), 17 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
|
|
||||||
index 50db9b0..ae86ade 100644
|
|
||||||
--- a/include/linux/skbuff.h
|
|
||||||
+++ b/include/linux/skbuff.h
|
|
||||||
@@ -1465,6 +1465,16 @@ static inline void skb_set_mac_header(struct sk_buff *skb, const int offset)
|
|
||||||
}
|
|
||||||
#endif /* NET_SKBUFF_DATA_USES_OFFSET */
|
|
||||||
|
|
||||||
+static inline void skb_mac_header_rebuild(struct sk_buff *skb)
|
|
||||||
+{
|
|
||||||
+ if (skb_mac_header_was_set(skb)) {
|
|
||||||
+ const unsigned char *old_mac = skb_mac_header(skb);
|
|
||||||
+
|
|
||||||
+ skb_set_mac_header(skb, -skb->mac_len);
|
|
||||||
+ memmove(skb_mac_header(skb), old_mac, skb->mac_len);
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
static inline int skb_checksum_start_offset(const struct sk_buff *skb)
|
|
||||||
{
|
|
||||||
return skb->csum_start - skb_headroom(skb);
|
|
||||||
diff --git a/net/ipv4/xfrm4_mode_beet.c b/net/ipv4/xfrm4_mode_beet.c
|
|
||||||
index 6341818..e3db3f9 100644
|
|
||||||
--- a/net/ipv4/xfrm4_mode_beet.c
|
|
||||||
+++ b/net/ipv4/xfrm4_mode_beet.c
|
|
||||||
@@ -110,10 +110,7 @@ static int xfrm4_beet_input(struct xfrm_state *x, struct sk_buff *skb)
|
|
||||||
|
|
||||||
skb_push(skb, sizeof(*iph));
|
|
||||||
skb_reset_network_header(skb);
|
|
||||||
-
|
|
||||||
- memmove(skb->data - skb->mac_len, skb_mac_header(skb),
|
|
||||||
- skb->mac_len);
|
|
||||||
- skb_set_mac_header(skb, -skb->mac_len);
|
|
||||||
+ skb_mac_header_rebuild(skb);
|
|
||||||
|
|
||||||
xfrm4_beet_make_header(skb);
|
|
||||||
|
|
||||||
diff --git a/net/ipv4/xfrm4_mode_tunnel.c b/net/ipv4/xfrm4_mode_tunnel.c
|
|
||||||
index 534972e..ed4bf11 100644
|
|
||||||
--- a/net/ipv4/xfrm4_mode_tunnel.c
|
|
||||||
+++ b/net/ipv4/xfrm4_mode_tunnel.c
|
|
||||||
@@ -66,7 +66,6 @@ static int xfrm4_mode_tunnel_output(struct xfrm_state *x, struct sk_buff *skb)
|
|
||||||
|
|
||||||
static int xfrm4_mode_tunnel_input(struct xfrm_state *x, struct sk_buff *skb)
|
|
||||||
{
|
|
||||||
- const unsigned char *old_mac;
|
|
||||||
int err = -EINVAL;
|
|
||||||
|
|
||||||
if (XFRM_MODE_SKB_CB(skb)->protocol != IPPROTO_IPIP)
|
|
||||||
@@ -84,10 +83,9 @@ static int xfrm4_mode_tunnel_input(struct xfrm_state *x, struct sk_buff *skb)
|
|
||||||
if (!(x->props.flags & XFRM_STATE_NOECN))
|
|
||||||
ipip_ecn_decapsulate(skb);
|
|
||||||
|
|
||||||
- old_mac = skb_mac_header(skb);
|
|
||||||
- skb_set_mac_header(skb, -skb->mac_len);
|
|
||||||
- memmove(skb_mac_header(skb), old_mac, skb->mac_len);
|
|
||||||
skb_reset_network_header(skb);
|
|
||||||
+ skb_mac_header_rebuild(skb);
|
|
||||||
+
|
|
||||||
err = 0;
|
|
||||||
|
|
||||||
out:
|
|
||||||
diff --git a/net/ipv6/xfrm6_mode_beet.c b/net/ipv6/xfrm6_mode_beet.c
|
|
||||||
index a81ce94..9949a35 100644
|
|
||||||
--- a/net/ipv6/xfrm6_mode_beet.c
|
|
||||||
+++ b/net/ipv6/xfrm6_mode_beet.c
|
|
||||||
@@ -80,7 +80,6 @@ static int xfrm6_beet_output(struct xfrm_state *x, struct sk_buff *skb)
|
|
||||||
static int xfrm6_beet_input(struct xfrm_state *x, struct sk_buff *skb)
|
|
||||||
{
|
|
||||||
struct ipv6hdr *ip6h;
|
|
||||||
- const unsigned char *old_mac;
|
|
||||||
int size = sizeof(struct ipv6hdr);
|
|
||||||
int err;
|
|
||||||
|
|
||||||
@@ -90,10 +89,7 @@ static int xfrm6_beet_input(struct xfrm_state *x, struct sk_buff *skb)
|
|
||||||
|
|
||||||
__skb_push(skb, size);
|
|
||||||
skb_reset_network_header(skb);
|
|
||||||
-
|
|
||||||
- old_mac = skb_mac_header(skb);
|
|
||||||
- skb_set_mac_header(skb, -skb->mac_len);
|
|
||||||
- memmove(skb_mac_header(skb), old_mac, skb->mac_len);
|
|
||||||
+ skb_mac_header_rebuild(skb);
|
|
||||||
|
|
||||||
xfrm6_beet_make_header(skb);
|
|
||||||
|
|
||||||
diff --git a/net/ipv6/xfrm6_mode_tunnel.c b/net/ipv6/xfrm6_mode_tunnel.c
|
|
||||||
index 261e6e6..9f2095b 100644
|
|
||||||
--- a/net/ipv6/xfrm6_mode_tunnel.c
|
|
||||||
+++ b/net/ipv6/xfrm6_mode_tunnel.c
|
|
||||||
@@ -63,7 +63,6 @@ static int xfrm6_mode_tunnel_output(struct xfrm_state *x, struct sk_buff *skb)
|
|
||||||
static int xfrm6_mode_tunnel_input(struct xfrm_state *x, struct sk_buff *skb)
|
|
||||||
{
|
|
||||||
int err = -EINVAL;
|
|
||||||
- const unsigned char *old_mac;
|
|
||||||
|
|
||||||
if (XFRM_MODE_SKB_CB(skb)->protocol != IPPROTO_IPV6)
|
|
||||||
goto out;
|
|
||||||
@@ -80,10 +79,9 @@ static int xfrm6_mode_tunnel_input(struct xfrm_state *x, struct sk_buff *skb)
|
|
||||||
if (!(x->props.flags & XFRM_STATE_NOECN))
|
|
||||||
ipip6_ecn_decapsulate(skb);
|
|
||||||
|
|
||||||
- old_mac = skb_mac_header(skb);
|
|
||||||
- skb_set_mac_header(skb, -skb->mac_len);
|
|
||||||
- memmove(skb_mac_header(skb), old_mac, skb->mac_len);
|
|
||||||
skb_reset_network_header(skb);
|
|
||||||
+ skb_mac_header_rebuild(skb);
|
|
||||||
+
|
|
||||||
err = 0;
|
|
||||||
|
|
||||||
out:
|
|
||||||
--
|
|
||||||
1.7.9.1
|
|
||||||
|
|
|
@ -36,9 +36,9 @@ Index: linux-3.2/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
|
||||||
- }
|
- }
|
||||||
+ spin_lock_irqsave(&adapter->tx_lock, flags);
|
+ spin_lock_irqsave(&adapter->tx_lock, flags);
|
||||||
+
|
+
|
||||||
if (skb->mark == 0x01)
|
|
||||||
type = atl1c_trans_high;
|
if (atl1c_tpd_avail(adapter, type) < tpd_req) {
|
||||||
else
|
/* no enough descriptor, just stop queue */
|
||||||
Index: linux-3.2/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
|
Index: linux-3.2/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- linux-3.2.orig/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
|
--- linux-3.2.orig/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
|
||||||
|
|
|
@ -75,7 +75,6 @@
|
||||||
|
|
||||||
+ bugfix/x86/drm-i915-do-not-enable-RC6p-on-Sandy-Bridge.patch
|
+ bugfix/x86/drm-i915-do-not-enable-RC6p-on-Sandy-Bridge.patch
|
||||||
+ bugfix/x86/drm-i915-fix-operator-precedence-when-enabling-RC6p.patch
|
+ bugfix/x86/drm-i915-fix-operator-precedence-when-enabling-RC6p.patch
|
||||||
+ bugfix/all/ipsec-be-careful-of-non-existing-mac-headers.patch
|
|
||||||
|
|
||||||
+ features/all/fs-symlink-restrictions-on-sticky-directories.patch
|
+ features/all/fs-symlink-restrictions-on-sticky-directories.patch
|
||||||
+ features/all/fs-symlink-restrictions-on-sticky-directories-fix-2.patch
|
+ features/all/fs-symlink-restrictions-on-sticky-directories-fix-2.patch
|
||||||
|
|
Loading…
Reference in New Issue