svn commit: r227549 - stable/7/sys/nfsclient

Mark Saad nonesuch at longcount.org
Wed Nov 30 17:11:00 UTC 2011


On Thu, Nov 17, 2011 at 1:36 PM, Alfred Perlstein <alfred at freebsd.org> wrote:
> * Rick Macklem <rmacklem at uoguelph.ca> [111116 21:16] wrote:
>> Alfred Perlstein wrote:
>> > Rick, I have a question, what will happen if the nfs_freesillyrename()
>> > call happens when the mount is down? Will it block the
>> > taskqueue_thread?
>> >
>> > If so, it might make more sense to make a taskqueue per mount point.
>> >
>> > If not, excuse me. :-)
>> >
>> Well, all nfs_freesillyrename() does is a vrele() on the parent
>> directory when the file node's use count has gone to 0.
>> I can't think why that would do any RPC, so I don't see a problem?
>> If you do see a problem with vrele() on the directory, please let me
>> know.
>>
>> The problem this fixes is a LOR that would occur when the vrele() on
>> the directory was done by the thread doing VOP_INACTIVE(), since it
>> already has the file vnode lock and the vrele() was locking the parent
>> directory. This could cause a fairly rare deadlock.
>
> Yes, I understand the VFS deadlock.
>
> I see, I didn't realize the call was against the directory,
> thank you for explaining.
>
> -Alfred
Rick
  Any chance this will make it back into 7.3-RELEASE and 7.4-RELEASE ?


-- 
mark saad | nonesuch at longcount.org


More information about the svn-src-stable-7 mailing list