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 PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sat, 15 Dec 2007 15:18:43 +0800 From: Herbert Xu <herbert@...dor.apana.org.au> To: akpm@...ux-foundation.org (Andrew Morton) Cc: miles.lane@...il.com, linux-kernel@...r.kernel.org, netdev@...r.kernel.org, mingo@...e.hu, a.p.zijlstra@...llo.nl Subject: Re: 2.6.24-rc5-mm1 -- inconsistent {in-softirq-W} -> {softirq-on-R} usage. Andrew Morton <akpm@...ux-foundation.org> wrote: > > I'd say you hit a networking locking bug and then when trying to report > that bug, lockdep crashed. > > The networking bug looks to be around sock_i_ino()'s taking of > sk_callback_lock with softirq's enabled. Perhaps this will fix it. > > diff -puN net/core/sock.c~a net/core/sock.c > --- a/net/core/sock.c~a > +++ a/net/core/sock.c > @@ -1115,9 +1115,9 @@ int sock_i_uid(struct sock *sk) > { > int uid; > > - read_lock(&sk->sk_callback_lock); > + read_lock_bh(&sk->sk_callback_lock); > uid = sk->sk_socket ? SOCK_INODE(sk->sk_socket)->i_uid : 0; > - read_unlock(&sk->sk_callback_lock); > + read_unlock_bh(&sk->sk_callback_lock); The callback lock is never taken for writing in BH context so this shouldn't be needed. Let's fix the lockdep checker first and then decide what's broken in networking, OK? Cheers, -- Visit Openswan at http://www.openswan.org/ Email: Herbert Xu ~{PmV>HI~} <herbert@...dor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists