Received: by oss.sgi.com id ; Tue, 20 Jun 2000 14:53:10 -0700 Received: from ppp0.ocs.com.au ([203.34.97.3]:36368 "HELO mail.ocs.com.au") by oss.sgi.com with SMTP id ; Tue, 20 Jun 2000 14:52:54 -0700 Received: (qmail 15828 invoked by uid 502); 20 Jun 2000 21:52:51 -0000 Received: (qmail 15821 invoked from network); 20 Jun 2000 21:52:49 -0000 Received: from ocs3.ocs-net (192.168.255.3) by mail.ocs.com.au with SMTP; 20 Jun 2000 21:52:49 -0000 X-Mailer: exmh version 2.1.1 10/15/1999 From: Keith Owens To: "netdev@oss.sgi.com" Subject: Re: modular net drivers, take 2 In-reply-to: Your message of "Tue, 20 Jun 2000 17:38:57 +0200." <20000620173857.A4089@fred.muc.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Wed, 21 Jun 2000 07:52:48 +1000 Message-ID: <4490.961537968@ocs3.ocs-net> Sender: owner-netdev@oss.sgi.com Precedence: bulk Return-Path: X-Orcpt: rfc822;netdev-outgoing On Tue, 20 Jun 2000 17:38:57 +0200, Andi Kleen wrote: >On Tue, Jun 20, 2000 at 02:04:35PM +0200, Andrew Morton wrote: >> - sys_ioctl() and sys_delete_module() both already claim >> the big lock, so where's the race anyway? I feel I'm missing >> something.. >I guess there are some time critical ioctls that should be run outside >kernel lock though. It is far too late to audit them all though. ioctls are not a problem, as long as they use a file descriptor, i.e. no global ioctls. Getting a file descriptor requires open() or its equivalent which set the module use_count. The race is in open, I don't know of any races after use_count is set and open() has complete and left the module.