Re: [PATCH] [Request for inclusion] Filesystem in Userspace

Pavel Machek
2004-11-27T17:17:05Z

Hi!

> >The solution I'm thinking is along the lines of accounting the number
> >of writable pages assigned to FUSE filesystems. Limiting this should
> >solve the deadlock problem. This would only impact performance for
> >shared writable mappings, which are rare anyway.
>
> Note that NFS, and any filesystems on iSCSI or g/e/ndb block
> devices have the exact same problem. To explain why this is
> the case, lets start with the VM allocation and pageout
> thresholds:
>
> pages_min ------------------
>
> GFP_ATOMIC ------------------
>
> PF_MEMALLOC ------------------
>
> 0 ------------------
>
> When writing out a dirty page, the pageout code is allowed
> to allocate network buffers down to the PF_MEMALLOC boundary.
>
> However, when receiving the ACK network packets from the server,
> the network stack is only allowed to allocate memory down to the
> GFP_ATOMIC watermark.

Ouch... Shame on me, I never realized that this is a problem. I knew
that swapping over nbd does not work, but I did not realize that
writeout is as critical as swapping...

:-(. This means that read/write nbd is pretty bad idea. I wonder why
it is not broken for people? Probably noone uses so big ammount of
data over nbd...

Can you describe that solution? You can do it anonymously if you want
to ;-)))).
Pavel
--
People were complaining that M$ turns users into beta-testers...
...jr ghea gurz vagb qrirybcref, naq gurl frrz gb yvxr vg gung jnl!