Re: [PATCH] remove throttle_vm_writeout()

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Miklos Szeredi
Date: Thursday, October 4, 2007 - 3:39 pm

> None of the above.

Ah, OK.

I did read the changelog, but you added quite a bit of translation ;)


No, doing the throttling per-zone won't in itself fix the deadlock.

Here's a deadlock example:

Total memory = 32M
/proc/sys/vm/dirty_ratio = 10
dirty_threshold = 3M
ratelimit_pages = 1M

Some program dirties 4M (dirty_threshold + ratelimit_pages) of mmap on
a fuse fs.  Page balancing is called which turns all these into
writeback pages.

Then userspace filesystem gets a write request, and tries to allocate
memory needed to complete the writeout.

That will possibly trigger direct reclaim, and throttle_vm_writeout()
will be called.  That will block until nr_writeback goes below 3.3M
(dirty_threshold + 10%).  But since all 4M of writeback is from the
fuse fs, that will never happen.

Does that explain it better?

Miklos
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Thu Oct 4, 5:25 am)
Re: [PATCH] remove throttle_vm_writeout(), Peter Zijlstra, (Thu Oct 4, 5:40 am)
Re: [PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Thu Oct 4, 6:00 am)
Re: [PATCH] remove throttle_vm_writeout(), Peter Zijlstra, (Thu Oct 4, 6:23 am)
Re: [PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Thu Oct 4, 6:49 am)
Re: [PATCH] remove throttle_vm_writeout(), Peter Zijlstra, (Thu Oct 4, 9:47 am)
Re: [PATCH] remove throttle_vm_writeout(), Andrew Morton, (Thu Oct 4, 10:46 am)
Re: [PATCH] remove throttle_vm_writeout(), Peter Zijlstra, (Thu Oct 4, 11:10 am)
Re: [PATCH] remove throttle_vm_writeout(), Andrew Morton, (Thu Oct 4, 11:54 am)
Re: [PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Thu Oct 4, 2:07 pm)
Re: [PATCH] remove throttle_vm_writeout(), Andrew Morton, (Thu Oct 4, 2:56 pm)
Re: [PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Thu Oct 4, 3:39 pm)
Re: [PATCH] remove throttle_vm_writeout(), Andrew Morton, (Thu Oct 4, 4:09 pm)
Re: [PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Thu Oct 4, 4:26 pm)
Re: [PATCH] remove throttle_vm_writeout(), Andrew Morton, (Thu Oct 4, 4:48 pm)
Re: [PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Thu Oct 4, 5:12 pm)
Re: [PATCH] remove throttle_vm_writeout(), Andrew Morton, (Thu Oct 4, 5:48 pm)
Re: [PATCH] remove throttle_vm_writeout(), Peter Zijlstra, (Fri Oct 5, 12:32 am)
Re: [PATCH] remove throttle_vm_writeout(), Peter Zijlstra, (Fri Oct 5, 1:22 am)
Re: [PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Fri Oct 5, 2:22 am)
Re: [PATCH] remove throttle_vm_writeout(), Peter Zijlstra, (Fri Oct 5, 2:47 am)
Re: [PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Fri Oct 5, 3:27 am)
Re: [PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Fri Oct 5, 3:32 am)
Re: [PATCH] remove throttle_vm_writeout(), Peter Zijlstra, (Fri Oct 5, 3:57 am)
Re: [PATCH] remove throttle_vm_writeout(), Miklos Szeredi, (Fri Oct 5, 4:27 am)
Re: [PATCH] remove throttle_vm_writeout(), Fengguang Wu, (Fri Oct 5, 5:30 am)
Re: [PATCH] remove throttle_vm_writeout(), John Stoffel, (Fri Oct 5, 8:43 am)
Re: [PATCH] remove throttle_vm_writeout(), Andrew Morton, (Fri Oct 5, 10:20 am)
Re: [PATCH] remove throttle_vm_writeout(), Trond Myklebust, (Fri Oct 5, 10:50 am)
Re: [PATCH] remove throttle_vm_writeout(), Peter Zijlstra, (Fri Oct 5, 11:32 am)
Re: [PATCH] remove throttle_vm_writeout(), Trond Myklebust, (Fri Oct 5, 12:20 pm)
Re: [PATCH] remove throttle_vm_writeout(), Trond Myklebust, (Fri Oct 5, 12:23 pm)
Re: [PATCH] remove throttle_vm_writeout(), Rik van Riel, (Fri Oct 5, 12:54 pm)
Re: [PATCH] remove throttle_vm_writeout(), Peter Zijlstra, (Fri Oct 5, 2:07 pm)
Re: [PATCH] remove throttle_vm_writeout(), Fengguang Wu, (Fri Oct 5, 5:40 pm)
Re: [PATCH] remove throttle_vm_writeout(), Fengguang Wu, (Fri Oct 5, 7:32 pm)