tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Problem with autounload of nfsserver module



In article <Pine.NEB.4.64.1312140648400.22564%screamer.whooppee.com@localhost>,
Paul Goyette  <paul%whooppee.com@localhost> wrote:
>On Sat, 14 Dec 2013, Christos Zoulas wrote:
>
>> In article <Pine.NEB.4.64.1312140541170.819%screamer.whooppee.com@localhost>,
>> Paul Goyette  <paul%whooppee.com@localhost> wrote:
>>> I believe that the nfsserver module should not be allowed to autounload.
>>>
>>> Consider the following sequence of events:
>>>
>>> 1. mountd is started, and calls nfssvc(2)
>>> 2. The module subsystem autoloads the nfsserver module
>>> 3. mountd continues, adding entries to the exports list
>>>
>>> So far, everything is fine.  However....
>>>
>>> 4. When the autounload timer expires, the module subsystem unloads the
>>>    nfsserver module
>>> 5. As part of nfsserver_modcmd(), the export list is cleared
>>> 6. The autounload completes successfully
>>> 7. At some later time, we finally get around to starting nfsd.  This
>>>    succeeds, but the export list has been cleared, so there is nothing
>>>    for nfsd to deliver to the clients.
>>>
>>> So, depending on how much time it takes between starting mountd and
>>> starting nfsd, we could end up serving an empty exports list.
>>>
>>> The following patch prevents the module subsystem from unloading the
>>> nfsserver module.  (Manual unloading of the module will still work.)
>>> Comments?
>>
>> Perhaps you want it to prevent it from unloading while there are exported
>> filesystems?
>
>Yeah, that would work, too.  :)   The following patch prevents the 
>module from being auto-unloaded if there are exported filesystems.  (If 
>a manual unload is requested, we will still forcibly delete the exports 
>list.)

I committed something similar.

christos



Home | Main Index | Thread Index | Old Index