[linux] 01/02: Update to 3.2.72

debian-kernel at lists.debian.org debian-kernel at lists.debian.org
Wed Oct 14 02:15:31 UTC 2015


This is an automated email from the git hooks/post-receive script.

benh pushed a commit to branch wheezy
in repository linux.

commit d6b190b67e72521eace9220a233e50d674ebb500
Author: Ben Hutchings <ben at decadent.org.uk>
Date:   Wed Oct 14 01:27:51 2015 +0100

    Update to 3.2.72
    
    Drop patches that were included in it.
    Refresh drm-3.4 patch.
    Work around an ABI change.
---
 debian/changelog                                   |  93 +++++++++++++++
 ...rconf-validate-new-MTU-before-applying-it.patch |  61 ----------
 .../md-use-kzalloc-when-bitmap-is-disabled.patch   |  47 --------
 ...the-underlying-transport-exists-before-cr.patch |  74 ------------
 .../all/virtio-net-drop-netif_f_fraglist.patch     |  36 ------
 .../debian/x86-mm-avoid-abi-change-in-3.2.72.patch |  28 +++++
 debian/patches/features/all/drm/drm-3.4.patch      |  60 ++++++++--
 ...-log-tail-updates-with-j_checkpoint_mutex.patch | 128 ---------------------
 debian/patches/series                              |   6 +-
 9 files changed, 173 insertions(+), 360 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 08eb1b7..69c2f7c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,96 @@
+linux (3.2.72-1) UNRELEASED; urgency=medium
+
+  * New upstream stable update:
+    http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.72
+    - xen/gntdevt: Fix race condition in gntdev_release()
+    - [armel/ixp4xx] crypto: Remove bogus BUG_ON on scattered dst buffer
+    - target/iscsi: Fix double free of a TUR followed by a solicited NOPOUT
+    - md/raid1: extend spinlock to protect raid1_end_read_request against
+      inconsistencies
+    - target: REPORT LUNS should return LUN 0 even for dynamic ACLs
+    - [mips*] Fix sched_getaffinity with MT FPAFF enabled
+    - xhci: fix off by one error in TRB DMA address boundary check
+    - rds: fix an integer overflow test in rds_info_getsockopt()
+    - perf: Fix fasync handling on inherited events
+    - [mips*] Make set_pte() SMP safe.
+    - ocfs2: fix BUG in ocfs2_downconvert_thread_do_work()
+    - net: Clone skb before setting peeked flag
+    - net: Fix skb_set_peeked use-after-free bug
+    - [x86] ldt: Make modify_ldt synchronous
+    - [x86] ldt: Correct LDT access in single stepping logic
+    - [x86] ldt: Correct FPU emulation access to LDT
+    - dm btree: add ref counting ops for the leaves of top level btrees
+    - libiscsi: Fix host busy blocking during connection teardown
+    - libfc: Fix fc_fcp_cleanup_each_cmd()
+    - ipc,sem: fix use after free on IPC_RMID after a task using same semaphore
+      set exits
+    - [x86] ldt: Further fix FPU emulation
+    - net: Fix RCU splat in af_key
+    - sctp: donot reset the overall_error_count in SHUTDOWN_RECEIVE state
+    - [sparc] Fix userspace FPU register corruptions. (Closes: #789180)
+    - dcache: Handle escaped paths in prepend_path
+    - vfs: Test for and handle paths that are unreachable from their mnt_root
+    - rc-core: fix remove uevent generation
+    - PCI: Fix TI816X class code quirk
+    - mac80211: enable assoc check for mesh interfaces
+    - PCI: Add VPD function 0 quirk for Intel Ethernet devices
+    - usb: gadget: m66592-udc: forever loop in set_feature()
+    - KVM: MMU: fix validation of mmio page fault
+    - auxdisplay: ks0108: fix refcount
+    - devres: fix devres_get()
+    - [powerpc] windfarm: decrement client count when unregistering
+    - NFSv4: don't set SETATTR for O_RDONLY|O_EXCL
+    - usb: host: ehci-sys: delete useless bus_to_hcd conversion
+    - eCryptfs: Invalidate dcache entries when lower i_nlink is zero
+    - xfs: Fix xfs_attr_leafblock definition
+    - of/address: Don't loop forever in of_find_matching_node_by_address().
+    - drivercore: Fix unregistration path of platform devices
+    - xfs: return errors from partial I/O failures to files
+    - IB/qib: Change lkey table allocation to support more MRs
+    - SUNRPC: xs_reset_transport must mark the connection as disconnected
+    - IB/mlx4: Use correct SL on AH query under RoCE
+    - IB/uverbs: Fix race between ib_uverbs_open and remove_one
+    - IB/uverbs: reject invalid or unknown opcodes
+    - Input: evdev - do not report errors form flush()
+    - [x86] crypto: ghash-clmulni: specify context size for ghash async
+      algorithm
+    - fs: create and use seq_show_option for escaping
+    - ARM: 8429/1: disable GCC SRA optimization
+    - pagemap: hide physical addresses from non-privileged users
+    - [powerpc] MSI: Fix race condition in tearing down MSI interrupts
+    - hfs,hfsplus: cache pages correctly between bnode_create and bnode_free
+    - hfs: fix B-tree corruption after insertion at position 0
+    - perf header: Fixup reading of HEADER_NRCPUS feature
+    - USB: option: add ZTE PIDs
+    - Btrfs: fix read corruption of compressed and shared extents
+    - btrfs: skip waiting on ordered range for special files
+    - [armhf] 7880/1: Clear the IT state independent of the Thumb-2 mode
+    - [i386] platform: Fix Geode LX timekeeping in the generic x86 build
+    - [s390*] compat: correct uc_sigmask of the compat signal frame
+    - [x86] KVM: trap AMD MSRs for the TSeg base and mask
+    - usb: Use the USB_SS_MULT() macro to get the burst multiplier.
+    - xhci: give command abortion one more chance before killing xhci
+    - usb: xhci: Clear XHCI_STATE_DYING on start
+    - xhci: change xhci 1.0 only restrictions to support xhci 1.1
+    - cifs: use server timestamp for ntlmv2 authentication
+    - [x86] paravirt: Replace the paravirt nop with a bona fide empty function
+    - ocfs2/dlm: fix deadlock when dispatch assert master
+    - USB: whiteheat: fix potential null-deref at probe
+    - ipc/sem.c: fully initialize sem_array before making it visible
+    - Initialize msg/shm IPC objects before doing ipc_addid()
+    - net/tipc: initialize security state for new connection socket
+    - net: pktgen: fix race between pktgen_thread_worker() and kthread_stop()
+    - net: Fix skb csum races when peeking
+    - ipv6: lock socket in ip6_datagram_connect()
+    - bonding: correct the MAC address for "follow" fail_over_mac policy
+    - net/ipv6: Correct PIM6 mrt_lock handling
+    - fib_rules: fix fib rule dumps across multiple skbs
+    - ipv6: prevent fib6_run_gc() contention
+    - ipv6: update ip6_rt_last_gc every time GC is run
+    - jbd2: avoid infinite loop when destroying aborted journal
+
+ -- Ben Hutchings <ben at decadent.org.uk>  Wed, 14 Oct 2015 01:11:17 +0100
+
 linux (3.2.71-2) wheezy; urgency=medium
 
   * Ignore ABI changes in drivers/net/wireless/* (fixes FTBFS on i386)
diff --git a/debian/patches/bugfix/all/ipv6-addrconf-validate-new-MTU-before-applying-it.patch b/debian/patches/bugfix/all/ipv6-addrconf-validate-new-MTU-before-applying-it.patch
deleted file mode 100644
index 11609b4..0000000
--- a/debian/patches/bugfix/all/ipv6-addrconf-validate-new-MTU-before-applying-it.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From: Marcelo Leitner <mleitner at redhat.com>
-Date: Mon, 23 Feb 2015 11:17:13 -0300
-Subject: ipv6: addrconf: validate new MTU before applying it
-Origin: https://git.kernel.org/linus/77751427a1ff25b27d47a4c36b12c3c8667855ac
-
-Currently we don't check if the new MTU is valid or not and this allows
-one to configure a smaller than minimum allowed by RFCs or even bigger
-than interface own MTU, which is a problem as it may lead to packet
-drops.
-
-If you have a daemon like NetworkManager running, this may be exploited
-by remote attackers by forging RA packets with an invalid MTU, possibly
-leading to a DoS. (NetworkManager currently only validates for values
-too small, but not for too big ones.)
-
-The fix is just to make sure the new value is valid. That is, between
-IPV6_MIN_MTU and interface's MTU.
-
-Note that similar check is already performed at
-ndisc_router_discovery(), for when kernel itself parses the RA.
-
-Signed-off-by: Marcelo Ricardo Leitner <mleitner at redhat.com>
-Signed-off-by: Sabrina Dubroca <sd at queasysnail.net>
-Signed-off-by: David S. Miller <davem at davemloft.net>
----
- net/ipv6/addrconf.c | 17 ++++++++++++++++-
- 1 file changed, 16 insertions(+), 1 deletion(-)
-
---- a/net/ipv6/addrconf.c
-+++ b/net/ipv6/addrconf.c
-@@ -4321,6 +4321,21 @@ int addrconf_sysctl_forward(ctl_table *c
- 	return ret;
- }
- 
-+static
-+int addrconf_sysctl_mtu(struct ctl_table *ctl, int write,
-+			void __user *buffer, size_t *lenp, loff_t *ppos)
-+{
-+	struct inet6_dev *idev = ctl->extra1;
-+	int min_mtu = IPV6_MIN_MTU;
-+	struct ctl_table lctl;
-+
-+	lctl = *ctl;
-+	lctl.extra1 = &min_mtu;
-+	lctl.extra2 = idev ? &idev->dev->mtu : NULL;
-+
-+	return proc_dointvec_minmax(&lctl, write, buffer, lenp, ppos);
-+}
-+
- static void dev_disable_change(struct inet6_dev *idev)
- {
- 	if (!idev || !idev->dev)
-@@ -4421,7 +4436,7 @@ static struct addrconf_sysctl_table
- 			.data		= &ipv6_devconf.mtu6,
- 			.maxlen		= sizeof(int),
- 			.mode		= 0644,
--			.proc_handler	= proc_dointvec,
-+			.proc_handler	= addrconf_sysctl_mtu,
- 		},
- 		{
- 			.procname	= "accept_ra",
diff --git a/debian/patches/bugfix/all/md-use-kzalloc-when-bitmap-is-disabled.patch b/debian/patches/bugfix/all/md-use-kzalloc-when-bitmap-is-disabled.patch
deleted file mode 100644
index ac8669a..0000000
--- a/debian/patches/bugfix/all/md-use-kzalloc-when-bitmap-is-disabled.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From: Benjamin Randazzo <benjamin at randazzo.fr>
-Date: Sat, 25 Jul 2015 16:36:50 +0200
-Subject: md: use kzalloc() when bitmap is disabled
-Origin: http://git.neil.brown.name/?p=md.git;a=commit;h=77ba0569d4c8389c0a2162ab0c7c16a6f3b199e4
-
-In drivers/md/md.c get_bitmap_file() uses kmalloc() for creating a
-mdu_bitmap_file_t called "file".
-
-5769         file = kmalloc(sizeof(*file), GFP_NOIO);
-5770         if (!file)
-5771                 return -ENOMEM;
-
-This structure is copied to user space at the end of the function.
-
-5786         if (err == 0 &&
-5787             copy_to_user(arg, file, sizeof(*file)))
-5788                 err = -EFAULT
-
-But if bitmap is disabled only the first byte of "file" is initialized
-with zero, so it's possible to read some bytes (up to 4095) of kernel
-space memory from user space. This is an information leak.
-
-5775         /* bitmap disabled, zero the first byte and copy out */
-5776         if (!mddev->bitmap_info.file)
-5777                 file->pathname[0] = '\0';
-
-Signed-off-by: Benjamin Randazzo <benjamin at randazzo.fr>
-Signed-off-by: NeilBrown <neilb at suse.com>
-[bwh: Backported to 3.2:
- - Don't touch anything but the allocation call, as the following code is
-   significantly different here
- - Patch both possible allocation calls]
----
---- a/drivers/md/md.c
-+++ b/drivers/md/md.c
-@@ -5384,9 +5384,9 @@ static int get_bitmap_file(struct mddev
- 	int err = -ENOMEM;
- 
- 	if (md_allow_write(mddev))
--		file = kmalloc(sizeof(*file), GFP_NOIO);
-+		file = kzalloc(sizeof(*file), GFP_NOIO);
- 	else
--		file = kmalloc(sizeof(*file), GFP_KERNEL);
-+		file = kzalloc(sizeof(*file), GFP_KERNEL);
- 
- 	if (!file)
- 		goto out;
diff --git a/debian/patches/bugfix/all/rds-verify-the-underlying-transport-exists-before-cr.patch b/debian/patches/bugfix/all/rds-verify-the-underlying-transport-exists-before-cr.patch
deleted file mode 100644
index 717aa9a..0000000
--- a/debian/patches/bugfix/all/rds-verify-the-underlying-transport-exists-before-cr.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From: Sasha Levin <sasha.levin at oracle.com>
-Date: Tue, 8 Sep 2015 10:53:40 -0400
-Subject: RDS: verify the underlying transport exists before creating a
- connection
-Origin: https://git.kernel.org/linus/74e98eb085889b0d2d4908f59f6e00026063014f
-
-There was no verification that an underlying transport exists when creating
-a connection, this would cause dereferencing a NULL ptr.
-
-It might happen on sockets that weren't properly bound before attempting to
-send a message, which will cause a NULL ptr deref:
-
-[135546.047719] kasan: GPF could be caused by NULL-ptr deref or user memory accessgeneral protection fault: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC KASAN
-[135546.051270] Modules linked in:
-[135546.051781] CPU: 4 PID: 15650 Comm: trinity-c4 Not tainted 4.2.0-next-20150902-sasha-00041-gbaa1222-dirty #2527
-[135546.053217] task: ffff8800835bc000 ti: ffff8800bc708000 task.ti: ffff8800bc708000
-[135546.054291] RIP: __rds_conn_create (net/rds/connection.c:194)
-[135546.055666] RSP: 0018:ffff8800bc70fab0  EFLAGS: 00010202
-[135546.056457] RAX: dffffc0000000000 RBX: 0000000000000f2c RCX: ffff8800835bc000
-[135546.057494] RDX: 0000000000000007 RSI: ffff8800835bccd8 RDI: 0000000000000038
-[135546.058530] RBP: ffff8800bc70fb18 R08: 0000000000000001 R09: 0000000000000000
-[135546.059556] R10: ffffed014d7a3a23 R11: ffffed014d7a3a21 R12: 0000000000000000
-[135546.060614] R13: 0000000000000001 R14: ffff8801ec3d0000 R15: 0000000000000000
-[135546.061668] FS:  00007faad4ffb700(0000) GS:ffff880252000000(0000) knlGS:0000000000000000
-[135546.062836] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
-[135546.063682] CR2: 000000000000846a CR3: 000000009d137000 CR4: 00000000000006a0
-[135546.064723] Stack:
-[135546.065048]  ffffffffafe2055c ffffffffafe23fc1 ffffed00493097bf ffff8801ec3d0008
-[135546.066247]  0000000000000000 00000000000000d0 0000000000000000 ac194a24c0586342
-[135546.067438]  1ffff100178e1f78 ffff880320581b00 ffff8800bc70fdd0 ffff880320581b00
-[135546.068629] Call Trace:
-[135546.069028] ? __rds_conn_create (include/linux/rcupdate.h:856 net/rds/connection.c:134)
-[135546.069989] ? rds_message_copy_from_user (net/rds/message.c:298)
-[135546.071021] rds_conn_create_outgoing (net/rds/connection.c:278)
-[135546.071981] rds_sendmsg (net/rds/send.c:1058)
-[135546.072858] ? perf_trace_lock (include/trace/events/lock.h:38)
-[135546.073744] ? lockdep_init (kernel/locking/lockdep.c:3298)
-[135546.074577] ? rds_send_drop_to (net/rds/send.c:976)
-[135546.075508] ? __might_fault (./arch/x86/include/asm/current.h:14 mm/memory.c:3795)
-[135546.076349] ? __might_fault (mm/memory.c:3795)
-[135546.077179] ? rds_send_drop_to (net/rds/send.c:976)
-[135546.078114] sock_sendmsg (net/socket.c:611 net/socket.c:620)
-[135546.078856] SYSC_sendto (net/socket.c:1657)
-[135546.079596] ? SYSC_connect (net/socket.c:1628)
-[135546.080510] ? trace_dump_stack (kernel/trace/trace.c:1926)
-[135546.081397] ? ring_buffer_unlock_commit (kernel/trace/ring_buffer.c:2479 kernel/trace/ring_buffer.c:2558 kernel/trace/ring_buffer.c:2674)
-[135546.082390] ? trace_buffer_unlock_commit (kernel/trace/trace.c:1749)
-[135546.083410] ? trace_event_raw_event_sys_enter (include/trace/events/syscalls.h:16)
-[135546.084481] ? do_audit_syscall_entry (include/trace/events/syscalls.h:16)
-[135546.085438] ? trace_buffer_unlock_commit (kernel/trace/trace.c:1749)
-[135546.085515] rds_ib_laddr_check(): addr 36.74.25.172 ret -99 node type -1
-
-Acked-by: Santosh Shilimkar <santosh.shilimkar at oracle.com>
-Signed-off-by: Sasha Levin <sasha.levin at oracle.com>
-Signed-off-by: David S. Miller <davem at davemloft.net>
----
- net/rds/connection.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
---- a/net/rds/connection.c
-+++ b/net/rds/connection.c
-@@ -178,6 +178,12 @@ static struct rds_connection *__rds_conn
- 		}
- 	}
- 
-+	if (trans == NULL) {
-+		kmem_cache_free(rds_conn_slab, conn);
-+		conn = ERR_PTR(-ENODEV);
-+		goto out;
-+	}
-+
- 	conn->c_trans = trans;
- 
- 	ret = trans->conn_alloc(conn, gfp);
diff --git a/debian/patches/bugfix/all/virtio-net-drop-netif_f_fraglist.patch b/debian/patches/bugfix/all/virtio-net-drop-netif_f_fraglist.patch
deleted file mode 100644
index d4eb8bd..0000000
--- a/debian/patches/bugfix/all/virtio-net-drop-netif_f_fraglist.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From: Jason Wang <jasowang at redhat.com>
-Date: Wed, 5 Aug 2015 10:34:04 +0800
-Subject: virtio-net: drop NETIF_F_FRAGLIST
-Origin: https://git.kernel.org/linus/48900cb6af4282fa0fb6ff4d72a81aa3dadb5c39
-
-virtio declares support for NETIF_F_FRAGLIST, but assumes
-that there are at most MAX_SKB_FRAGS + 2 fragments which isn't
-always true with a fraglist.
-
-A longer fraglist in the skb will make the call to skb_to_sgvec overflow
-the sg array, leading to memory corruption.
-
-Drop NETIF_F_FRAGLIST so we only get what we can handle.
-
-Cc: Michael S. Tsirkin <mst at redhat.com>
-Signed-off-by: Jason Wang <jasowang at redhat.com>
-Acked-by: Michael S. Tsirkin <mst at redhat.com>
-Signed-off-by: David S. Miller <davem at davemloft.net>
----
- drivers/net/virtio_net.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/drivers/net/virtio_net.c
-+++ b/drivers/net/virtio_net.c
-@@ -981,9 +981,9 @@ static int virtnet_probe(struct virtio_d
- 	/* Do we support "hardware" checksums? */
- 	if (virtio_has_feature(vdev, VIRTIO_NET_F_CSUM)) {
- 		/* This opens up the world of extra features. */
--		dev->hw_features |= NETIF_F_HW_CSUM|NETIF_F_SG|NETIF_F_FRAGLIST;
-+		dev->hw_features |= NETIF_F_HW_CSUM | NETIF_F_SG;
- 		if (csum)
--			dev->features |= NETIF_F_HW_CSUM|NETIF_F_SG|NETIF_F_FRAGLIST;
-+			dev->features |= NETIF_F_HW_CSUM | NETIF_F_SG;
- 
- 		if (virtio_has_feature(vdev, VIRTIO_NET_F_GSO)) {
- 			dev->hw_features |= NETIF_F_TSO | NETIF_F_UFO
diff --git a/debian/patches/debian/x86-mm-avoid-abi-change-in-3.2.72.patch b/debian/patches/debian/x86-mm-avoid-abi-change-in-3.2.72.patch
new file mode 100644
index 0000000..d85c107
--- /dev/null
+++ b/debian/patches/debian/x86-mm-avoid-abi-change-in-3.2.72.patch
@@ -0,0 +1,28 @@
+From: Ben Hutchings <ben at decadent.org.uk>
+Date: Tue, 22 Sep 2015 18:19:39 +0200
+Subject: x86/mm: Avoid ABI change in 3.2.72
+Forwarded: not-needed
+
+Commit 37868fe113ff "x86/ldt: Make modify_ldt synchronous" was
+backported in 3.2.72 and made an incompatible change to
+mm_context_t.  Luckily it shrank the structure so we can just insert
+padding to preserve the old layout.  No modular code should be
+touching the members which have changed.
+
+---
+--- a/arch/x86/include/asm/mmu.h
++++ b/arch/x86/include/asm/mmu.h
+@@ -9,7 +9,13 @@
+  * we put the segment information here.
+  */
+ typedef struct {
++#ifdef __GENKSYMS__
++	void *ldt;
++	int size;
++#else
+ 	struct ldt_struct *ldt;
++	int pad;
++#endif
+ 
+ #ifdef CONFIG_X86_64
+ 	/* True if mm supports a task running in 32 bit compatibility mode. */
diff --git a/debian/patches/features/all/drm/drm-3.4.patch b/debian/patches/features/all/drm/drm-3.4.patch
index ea08058..2c2d2d96 100644
--- a/debian/patches/features/all/drm/drm-3.4.patch
+++ b/debian/patches/features/all/drm/drm-3.4.patch
@@ -45495,7 +45495,7 @@ index ead5d00..21a8271 100644
  		return ret;
  
 diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
-index a0b69ae0..e97ed61 100644
+index 9b9f447..e97ed61 100644
 --- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
 +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
 @@ -203,9 +203,9 @@ i915_gem_object_set_to_gpu_domain(struct drm_i915_gem_object *obj,
@@ -45729,6 +45729,21 @@ index a0b69ae0..e97ed61 100644
  				ret = -EFAULT;
  				mutex_lock(&dev->struct_mutex);
  				goto err;
+@@ -950,13 +1000,13 @@ i915_gem_execbuffer_move_to_active(struct list_head *objects,
+ 		  u32 old_write = obj->base.write_domain;
+ 
+ 
+-		obj->dirty = 1; /* be paranoid  */
+ 		obj->base.read_domains = obj->base.pending_read_domains;
+ 		obj->base.write_domain = obj->base.pending_write_domain;
+ 		obj->fenced_gpu_access = obj->pending_fenced_gpu_access;
+ 
+ 		i915_gem_object_move_to_active(obj, ring, seqno);
+ 		if (obj->base.write_domain) {
++			obj->dirty = 1;
+ 			obj->pending_gpu_write = true;
+ 			list_move_tail(&obj->gpu_write_list,
+ 				       &ring->gpu_write_list);
 @@ -998,6 +1048,31 @@ i915_gem_execbuffer_retire_commands(struct drm_device *dev,
  }
  
@@ -85964,7 +85979,7 @@ index b6e18c8..9c6b29a 100644
  			tmp = RREG32_PLL(RADEON_VCLK_ECP_CNTL);
  			tmp &= ~(RADEON_PIXCLK_ALWAYS_ONb |
 diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c
-index 21e689d..cf5dd63 100644
+index 87a677e..cf5dd63 100644
 --- a/drivers/gpu/drm/radeon/radeon_combios.c
 +++ b/drivers/gpu/drm/radeon/radeon_combios.c
 @@ -1259,15 +1259,10 @@ struct radeon_encoder_lvds *radeon_combios_get_lvds_info(struct radeon_encoder
@@ -86018,11 +86033,38 @@ index 21e689d..cf5dd63 100644
  					}
  					break;
  				default:
+@@ -3399,14 +3394,6 @@ void radeon_combios_asic_init(struct drm_device *dev)
+ 	    rdev->pdev->subsystem_device == 0x30ae)
+ 		return;
+ 
+-	/* quirk for rs4xx HP Compaq dc5750 Small Form Factor to make it resume
+-	 * - it hangs on resume inside the dynclk 1 table.
+-	 */
+-	if (rdev->family == CHIP_RS480 &&
+-	    rdev->pdev->subsystem_vendor == 0x103c &&
+-	    rdev->pdev->subsystem_device == 0x280a)
+-		return;
+-
+ 	/* DYN CLK 1 */
+ 	table = combios_get_table_offset(dev, COMBIOS_DYN_CLK_1_TABLE);
+ 	if (table)
 diff --git a/drivers/gpu/drm/radeon/radeon_connectors.c b/drivers/gpu/drm/radeon/radeon_connectors.c
-index 683cede1..9184bbe 100644
+index 6303fc8..9184bbe 100644
 --- a/drivers/gpu/drm/radeon/radeon_connectors.c
 +++ b/drivers/gpu/drm/radeon/radeon_connectors.c
-@@ -846,6 +846,27 @@ static int radeon_dvi_get_modes(struct drm_connector *connector)
+@@ -82,11 +82,6 @@ void radeon_connector_hotplug(struct drm_connector *connector)
+ 			if (!radeon_hpd_sense(rdev, radeon_connector->hpd.hpd)) {
+ 				drm_helper_connector_dpms(connector, DRM_MODE_DPMS_OFF);
+ 			} else if (radeon_dp_needs_link_train(radeon_connector)) {
+-				/* Don't try to start link training before we
+-				 * have the dpcd */
+-				if (!radeon_dp_getdpcd(radeon_connector))
+-					return;
+-
+ 				/* set it to OFF so that drm_helper_connector_dpms()
+ 				 * won't return immediately since the current state
+ 				 * is ON at this point.
+@@ -851,6 +846,27 @@ static int radeon_dvi_get_modes(struct drm_connector *connector)
  	return ret;
  }
  
@@ -86050,7 +86092,7 @@ index 683cede1..9184bbe 100644
  /*
   * DVI is complicated
   * Do a DDC probe, if DDC probe passes, get the full EDID so
-@@ -870,6 +891,9 @@ radeon_dvi_detect(struct drm_connector *connector, bool force)
+@@ -875,6 +891,9 @@ radeon_dvi_detect(struct drm_connector *connector, bool force)
  	enum drm_connector_status ret = connector_status_disconnected;
  	bool dret = false;
  
@@ -86060,7 +86102,7 @@ index 683cede1..9184bbe 100644
  	if (radeon_connector->ddc_bus)
  		dret = radeon_ddc_probe(radeon_connector, false);
  	if (dret) {
-@@ -1080,7 +1104,7 @@ static int radeon_dvi_mode_valid(struct drm_connector *connector,
+@@ -1085,7 +1104,7 @@ static int radeon_dvi_mode_valid(struct drm_connector *connector,
  		    (radeon_connector->connector_object_id == CONNECTOR_OBJECT_ID_HDMI_TYPE_B))
  			return MODE_OK;
  		else if (radeon_connector->connector_object_id == CONNECTOR_OBJECT_ID_HDMI_TYPE_A) {
@@ -86069,7 +86111,7 @@ index 683cede1..9184bbe 100644
  				/* HDMI 1.3+ supports max clock of 340 Mhz */
  				if (mode->clock > 340000)
  					return MODE_CLOCK_HIGH;
-@@ -1140,13 +1164,23 @@ static int radeon_dp_get_modes(struct drm_connector *connector)
+@@ -1145,13 +1164,23 @@ static int radeon_dp_get_modes(struct drm_connector *connector)
  	    (connector->connector_type == DRM_MODE_CONNECTOR_LVDS)) {
  		struct drm_display_mode *mode;
  
@@ -86100,7 +86142,7 @@ index 683cede1..9184bbe 100644
  
  		if (ret > 0) {
  			if (encoder) {
-@@ -1157,7 +1191,6 @@ static int radeon_dp_get_modes(struct drm_connector *connector)
+@@ -1162,7 +1191,6 @@ static int radeon_dp_get_modes(struct drm_connector *connector)
  			return ret;
  		}
  
@@ -86108,7 +86150,7 @@ index 683cede1..9184bbe 100644
  		if (!encoder)
  			return 0;
  
-@@ -1264,6 +1297,9 @@ radeon_dp_detect(struct drm_connector *connector, bool force)
+@@ -1269,6 +1297,9 @@ radeon_dp_detect(struct drm_connector *connector, bool force)
  	struct radeon_connector_atom_dig *radeon_dig_connector = radeon_connector->con_priv;
  	struct drm_encoder *encoder = radeon_best_single_encoder(connector);
  
diff --git a/debian/patches/jbd2-protect-all-log-tail-updates-with-j_checkpoint_mutex.patch b/debian/patches/jbd2-protect-all-log-tail-updates-with-j_checkpoint_mutex.patch
deleted file mode 100644
index 1e1dfc9..0000000
--- a/debian/patches/jbd2-protect-all-log-tail-updates-with-j_checkpoint_mutex.patch
+++ /dev/null
@@ -1,128 +0,0 @@
-From: Jan Kara <jack at suse.cz>
-Date: Tue, 13 Mar 2012 15:43:04 -0400
-Subject: jbd2: protect all log tail updates with j_checkpoint_mutex
-
-commit a78bb11d7acd525623c6a0c2ff4e213d527573fa upstream.
-
-There are some log tail updates that are not protected by j_checkpoint_mutex.
-Some of these are harmless because they happen during startup or shutdown but
-updates in jbd2_journal_commit_transaction() and jbd2_journal_flush() can
-really race with other log tail updates (e.g. someone doing
-jbd2_journal_flush() with someone running jbd2_cleanup_journal_tail()). So
-protect all log tail updates with j_checkpoint_mutex.
-
-Signed-off-by: Jan Kara <jack at suse.cz>
-Signed-off-by: "Theodore Ts'o" <tytso at mit.edu>
-[bwh: Backported to 3.2:
- - Adjust context
- - Add unlock on the error path in jbd2_journal_flush()]
-Signed-off-by: Ben Hutchings <ben at decadent.org.uk>
----
- fs/jbd2/commit.c  |  2 ++
- fs/jbd2/journal.c | 19 ++++++++++++++++---
- 2 files changed, 18 insertions(+), 3 deletions(-)
-
---- a/fs/jbd2/commit.c
-+++ b/fs/jbd2/commit.c
-@@ -340,6 +340,7 @@ void jbd2_journal_commit_transaction(jou
- 	/* Do we need to erase the effects of a prior jbd2_journal_flush? */
- 	if (journal->j_flags & JBD2_FLUSHED) {
- 		jbd_debug(3, "super block updated\n");
-+		mutex_lock(&journal->j_checkpoint_mutex);
- 		/*
- 		 * We hold j_checkpoint_mutex so tail cannot change under us.
- 		 * We don't need any special data guarantees for writing sb
-@@ -350,6 +351,7 @@ void jbd2_journal_commit_transaction(jou
- 						journal->j_tail_sequence,
- 						journal->j_tail,
- 						WRITE_SYNC);
-+		mutex_unlock(&journal->j_checkpoint_mutex);
- 	} else {
- 		jbd_debug(3, "superblock not updated\n");
- 	}
---- a/fs/jbd2/journal.c
-+++ b/fs/jbd2/journal.c
-@@ -1242,6 +1242,8 @@ static int journal_reset(journal_t *jour
- 			journal->j_errno);
- 		journal->j_flags |= JBD2_FLUSHED;
- 	} else {
-+		/* Lock here to make assertions happy... */
-+		mutex_lock(&journal->j_checkpoint_mutex);
- 		/*
- 		 * Update log tail information. We use WRITE_FUA since new
- 		 * transaction will start reusing journal space and so we
-@@ -1252,6 +1254,7 @@ static int journal_reset(journal_t *jour
- 						journal->j_tail_sequence,
- 						journal->j_tail,
- 						WRITE_FUA);
-+		mutex_unlock(&journal->j_checkpoint_mutex);
- 	}
- 	return jbd2_journal_start_thread(journal);
- }
-@@ -1314,6 +1317,7 @@ int jbd2_journal_update_sb_log_tail(jour
- 	journal_superblock_t *sb = journal->j_superblock;
- 	int ret;
- 
-+	BUG_ON(!mutex_is_locked(&journal->j_checkpoint_mutex));
- 	jbd_debug(1, "JBD2: updating superblock (start %lu, seq %u)\n",
- 		  tail_block, tail_tid);
- 
-@@ -1344,6 +1348,7 @@ static void jbd2_mark_journal_empty(jour
- {
- 	journal_superblock_t *sb = journal->j_superblock;
- 
-+	BUG_ON(!mutex_is_locked(&journal->j_checkpoint_mutex));
- 	read_lock(&journal->j_state_lock);
- 	jbd_debug(1, "JBD2: Marking journal as empty (seq %d)\n",
- 		  journal->j_tail_sequence);
-@@ -1577,9 +1582,11 @@ int jbd2_journal_destroy(journal_t *jour
- 	spin_unlock(&journal->j_list_lock);
- 
- 	if (journal->j_sb_buffer) {
--		if (!is_journal_aborted(journal))
-+		if (!is_journal_aborted(journal)) {
-+			mutex_lock(&journal->j_checkpoint_mutex);
- 			jbd2_mark_journal_empty(journal);
--		else
-+			mutex_unlock(&journal->j_checkpoint_mutex);
-+		} else
- 			err = -EIO;
- 		brelse(journal->j_sb_buffer);
- 	}
-@@ -1828,10 +1835,13 @@ int jbd2_journal_flush(journal_t *journa
- 	if (is_journal_aborted(journal))
- 		return -EIO;
- 
-+	mutex_lock(&journal->j_checkpoint_mutex);
- 	if (!err) {
- 		err = jbd2_cleanup_journal_tail(journal);
--		if (err < 0)
-+		if (err < 0) {
-+			mutex_unlock(&journal->j_checkpoint_mutex);
- 			goto out;
-+		}
- 		err = 0;
- 	}
- 
-@@ -1841,6 +1851,7 @@ int jbd2_journal_flush(journal_t *journa
- 	 * commits of data to the journal will restore the current
- 	 * s_start value. */
- 	jbd2_mark_journal_empty(journal);
-+	mutex_unlock(&journal->j_checkpoint_mutex);
- 	write_lock(&journal->j_state_lock);
- 	J_ASSERT(!journal->j_running_transaction);
- 	J_ASSERT(!journal->j_committing_transaction);
-@@ -1882,8 +1893,12 @@ int jbd2_journal_wipe(journal_t *journal
- 		write ? "Clearing" : "Ignoring");
- 
- 	err = jbd2_journal_skip_recovery(journal);
--	if (write)
-+	if (write) {
-+		/* Lock to make assertions happy... */
-+		mutex_lock(&journal->j_checkpoint_mutex);
- 		jbd2_mark_journal_empty(journal);
-+		mutex_unlock(&journal->j_checkpoint_mutex);
-+	}
- 
-  no_recovery:
- 	return err;
diff --git a/debian/patches/series b/debian/patches/series
index 443080f..0254572 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1153,12 +1153,8 @@ features/all/hpsa/0010-hpsa-add-in-gen9-controller-model-names.patch
 features/all/hpsa/0011-hpsa-add-in-P840ar-controller-model-name.patch
 
 bugfix/all/netfilter-ipset-Check-and-reject-crazy-0-input-param.patch
-bugfix/all/md-use-kzalloc-when-bitmap-is-disabled.patch
 debian/revert-acpica-utilities-split-io-address-types-from-.patch
-bugfix/all/ipv6-addrconf-validate-new-MTU-before-applying-it.patch
-bugfix/all/virtio-net-drop-netif_f_fraglist.patch
-bugfix/all/rds-verify-the-underlying-transport-exists-before-cr.patch
 debian/revert-libata-ignore-spurious-phy-event-on-lpm-polic.patch
 debian/usb-avoid-abi-change-in-3.2.69.patch
 debian/bh-avoid-abi-change-in-3.2.71.patch
-jbd2-protect-all-log-tail-updates-with-j_checkpoint_mutex.patch
+debian/x86-mm-avoid-abi-change-in-3.2.72.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/kernel/linux.git



More information about the Kernel-svn-changes mailing list