Messages in this thread | | | Date | Wed, 28 Jul 2004 15:32:28 +1000 | From | Nick Piggin <> | Subject | Re: [PATCH] Deadlock during heavy write activity to userspace NFS |
| |
Avi Kivity wrote: > Ulrich Weigand wrote: > >> Avi Kivity wrote: >> >> >> >>> In our case, all block I/O is done using unbuffered I/O, and all >>> memory is preallocated, so we don't need kswapd at all, just that >>> small bit of memory that syscalls consume. >>> >> >> >> Does your userspace process need to send/receive network packets >> in order to perform a write-out? > > Yes. > >> If so, how can you make sure your >> incoming packets aren't thrown away in out-of-memory situations? >> (Outgoing packets can use PF_MEMALLOC memory I guess, but incoming >> ones aren't associated to any process yet ...) >> >> >> > I did nothing to address this. So far it works well, even under heavy > load. I guess a general solution needs to address this as well. > > 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. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |