Re: [PATCH] Deadlock during heavy write activity to userspace NFS

Nick Piggin
2004-07-29T03:36:45Z

Ulrich Weigand wrote:

>Nick Piggin wrote:
>
>
>>Avi Kivity wrote:
>>
>>>The kernel NFS client (which kswapd depends on) has the same issue. Has
>>>anyone ever observed kswapd deadlock due to imcoming or outgoing NFS
>>>packets being discarded due to oom?
>>>
>>>
>>Yes this has been observed.
>>
>>alloc_skb on the client needs to somehow know that traffic coming
>>from the server is "MEMALLOC" and allowed to use memory reserves.
>>
>
>What would be an appropriate way to solve this problem? A special
>socket option?
>
>

What I think was happening is dirty NFS pages being written out in response
to low memory. The acks coming back from the server weren't being received
because memory couldn't be allocated for them.

Ideally you would allow the NFS path to allocate enough memory that it can
guarantee forward progress - like how the block layer uses mempools for
struct requests, for example.