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: Fri, 20 Apr 2007 16:27:56 -0700 (PDT) From: David Miller <davem@...emloft.net> To: mostrows@...thlink.net Cc: florz@...rz.de, netdev@...r.kernel.org Subject: Re: [PATCH 4/4] PPPoE: race between interface going down and release() From: Michal Ostrowski <mostrows@...thlink.net> Date: Sun, 11 Mar 2007 21:36:56 -0500 > Attached below is my take on how to address this problem. > This addresses any concerns you may have had about checking po->pppoe_dev==NULL, > because accesses to this field are now synchronized with pppoe_hash_lock. > > Once we can settle on a fix for this, I'll deal with the SID==0 issue > (trying to do that now would just cause patch conflicts). This patch doesn't apply becuase in the actual pppoe.c code: > - read_lock_bh(&pppoe_hash_lock); > + write_lock_bh(&pppoe_hash_lock); > for (hash = 0; hash < PPPOE_HASH_SIZE; hash++) { > struct pppox_sock *po = item_hash_table[hash]; > > while (po != NULL) { > - if (po->pppoe_dev == dev) { > - struct sock *sk = sk_pppox(po); > - > - sock_hold(sk); > - > - /* We hold a reference to SK, now drop the > - * hash table lock so that we may attempt > - * to lock the socket (which can sleep). > - */ That code doesn't look like that. At the end, instead there is: sock_hold(sk); po->pppoe_dev = NULL; and that goes back all the way to 2.6.12 and beyond before we moved over to GIT. So I'm having trouble figuring out what tree you generated that patch against :-) Perhaps there was an earlier patch I missed or something. But I won't second guess and leave it to you to let me know what I should actually apply. Thanks. - 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