Re: [PATCH v2 0/3] recoalesce when ld read/write fails

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

 



On 08/17/2011 06:42 AM, Peng Tao wrote:
<snip>
>> They look *really* good these patches. But as you said, do they actually work?
>>
>> Did you test any of this? I mean do you have a facility to inject random
>> IO errors and test this out?
> I have tested the patchset by forcing all bio to fail so IO will be
> re-send to MDS. Also I tested read/write by forcing all IO that
> touches pages beyond 16K to fail. Both tests passed.
> 

So that sounds good. Why don't you like these patches?

>>
<snip>
> I tried to test "git clone linux" on a 384M memory VM but it hangs as
> server is rejecting layoutget with NFS4ERR_LAYOUTTRYLATER.
> /proc/self/mountstats shows that client has sent more than 14K
> layoutgets but never returns any layout. I checked related code and it
> seems client should send layoutreturn for closed files. Will git keep
> all files open? Or is there any case that client won't return the
> layout even after file close?
> 

Yes! our client will never ever return any layouts. The forgetful
model for you. It will only ever "layout_return" on evict_inode which
is way after close, when the Kernel decides to cleanup the inode
cache. Which only happens after a while.

If Your layout driver sets the RETURN_ON_CLOSE bit on the layout
then the pNFSD server code will simulate a layout_return on a file
close. This is what I use in EXOFS and it works very well. (I should
know because I wrote this patch for the pnfsd server)

It looks like your blocks-based pNFSD filesystem needs layouts
returned. Set the res->lg_return_on_close = true; flag in your
.layout_get member and you should see layout_return on close.

Look in Benny's pNFS tree at fs/exofs/export.c file how I do
it there.

> This seems to be another issue though.
> 

Yes this is a different Issue.

It looks from what you tested that the second approach works
well. I'll also test this out later on. Lets not rule these
out yet.

> Thanks,
> Tao

Sorry for the late response I just came back from Vacation,
It'll me some time to catch up

Thanks
Boaz
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux