]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.6-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 21 Nov 2012 17:46:42 +0000 (09:46 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 21 Nov 2012 17:46:42 +0000 (09:46 -0800)
added patches:
nfc-use-dynamic-initialization-for-rwlocks.patch

queue-3.6/nfc-use-dynamic-initialization-for-rwlocks.patch [new file with mode: 0644]
queue-3.6/series

diff --git a/queue-3.6/nfc-use-dynamic-initialization-for-rwlocks.patch b/queue-3.6/nfc-use-dynamic-initialization-for-rwlocks.patch
new file mode 100644 (file)
index 0000000..6264ec5
--- /dev/null
@@ -0,0 +1,52 @@
+From fe235b58d517d623bf6d40c77afca1b0ee6fc85d Mon Sep 17 00:00:00 2001
+From: Szymon Janc <szymon.janc@tieto.com>
+Date: Tue, 25 Sep 2012 12:42:50 +0200
+Subject: NFC: Use dynamic initialization for rwlocks
+
+From: Szymon Janc <szymon.janc@tieto.com>
+
+commit fe235b58d517d623bf6d40c77afca1b0ee6fc85d upstream.
+
+If rwlock is dynamically allocated but statically initialized it is
+missing proper lockdep annotation.
+
+INFO: trying to register non-static key.
+the code is fine but needs lockdep annotation.
+turning off the locking correctness validator.
+Pid: 3352, comm: neard Not tainted 3.5.0-999-nfc+ #2
+Call Trace:
+[<ffffffff810c8526>] __lock_acquire+0x8f6/0x1bf0
+[<ffffffff81739045>] ? printk+0x4d/0x4f
+[<ffffffff810c9eed>] lock_acquire+0x9d/0x220
+[<ffffffff81702bfe>] ? nfc_llcp_sock_from_sn+0x4e/0x160
+[<ffffffff81746724>] _raw_read_lock+0x44/0x60
+[<ffffffff81702bfe>] ? nfc_llcp_sock_from_sn+0x4e/0x160
+[<ffffffff81702bfe>] nfc_llcp_sock_from_sn+0x4e/0x160
+[<ffffffff817034a7>] nfc_llcp_get_sdp_ssap+0xa7/0x1b0
+[<ffffffff81706353>] llcp_sock_bind+0x173/0x210
+[<ffffffff815d9c94>] sys_bind+0xe4/0x100
+[<ffffffff8139209e>] ? trace_hardirqs_on_thunk+0x3a/0x3f
+[<ffffffff8174ea69>] system_call_fastpath+0x16/0x1b
+
+Signed-off-by: Szymon Janc <szymon.janc@tieto.com>
+Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
+Cc: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ net/nfc/llcp/llcp.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/net/nfc/llcp/llcp.c
++++ b/net/nfc/llcp/llcp.c
+@@ -1182,8 +1182,8 @@ int nfc_llcp_register_device(struct nfc_
+               goto err_rx_wq;
+       }
+-      local->sockets.lock = __RW_LOCK_UNLOCKED(local->sockets.lock);
+-      local->connecting_sockets.lock = __RW_LOCK_UNLOCKED(local->connecting_sockets.lock);
++      rwlock_init(&local->sockets.lock);
++      rwlock_init(&local->connecting_sockets.lock);
+       nfc_llcp_build_gb(local);
index 445ea252085bcf187e7a5d01b734a275c9a9f786..ad8d3d8fb1116015703600cdd42ffbce64577bc6 100644 (file)
@@ -71,3 +71,4 @@ netfilter-nf_nat-don-t-check-for-port-change-on-icmp-tuples.patch
 netfilter-xt_tee-don-t-use-destination-address-found-in-header.patch
 netfilter-nf_conntrack-fix-rt_gateway-checks-for-h.323-helper.patch
 s390-signal-set-correct-address-space-control.patch
+nfc-use-dynamic-initialization-for-rwlocks.patch