On Mon, 2006-06-05 at 16:44 -0400, Dave Jones wrote:
> On Mon, Jun 05, 2006 at 04:09:47PM -0400, Dave Jones wrote:
>
> > > Try reverting debug-shared-irqs.patch, or disable the sound driver?
> > Will turn off the sound driver, and see what happens.
>
> Win! It now boots. I blew it up really easy with a socket-fuzzer though.
> (http://people.redhat.com/davej/sfuzz.c)
>
> [ 874.865028] ======================================
> [ 874.943738] [ BUG: bad unlock ordering detected! ]
> [ 875.002919] --------------------------------------
> [ 875.062134] sfuzz/23915 is trying to release lock (&sctp_port_alloc_lock) at:
> [ 875.149619] [<d128ed4e>] sctp_get_port_local+0xd0/0x285 [sctp]
> [ 875.222636] but the next lock to release is:
> [ 875.276019] (&sctp_port_hashtable[i].lock){-...}, at: [<d128ed0e>] sctp_get_port_local+0x90/0x285 [sctp]
> [ 875.393031]
this is "interesting" code to follow but it looks like a honest case of
deliberate out of order unlock
Signed-off-by: Arjan van de Ven <[email protected]>
---
net/sctp/socket.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: linux-2.6.17-rc5-mm3/net/sctp/socket.c
===================================================================
--- linux-2.6.17-rc5-mm3.orig/net/sctp/socket.c
+++ linux-2.6.17-rc5-mm3/net/sctp/socket.c
@@ -4597,7 +4597,7 @@ static long sctp_get_port_local(struct s
sctp_spin_unlock(&head->lock);
} while (--remaining > 0);
sctp_port_rover = rover;
- sctp_spin_unlock(&sctp_port_alloc_lock);
+ spin_unlock_non_nested(&sctp_port_alloc_lock);
/* Exhausted local port range during search? */
ret = 1;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]