On Wed, Mar 19, 2008 at 7:33 PM, Daniel Phillips <phillips@phunq.net> wrote:You mean like LVM2 LV ontop of MD? Or stacking purely DM-based stacked devices (Maybe LVM2 LV ontop of mpath? or dm-crypt on LVM2?). Cool, so I looked briefly at the ddsnap DM target some time ago and saw that it needed to take special care to leverage this particular throttle (I think this was the per-driver metric?). My memory is fuzzy on that but what I'm wondering is how "general" is this new patch? Do additional steps need to be taken to be able to _really_ guarantee devices won't deadlock? I typically use dm-linear devices built on MD (raid1 w/ one member being remote via nbd). The per-bdi dirty writeback accounting has proven useful but I've recently hit a nasty livelock when the bdi accounting for a device no longer enables writeback progress to be made, e.g: BdiWriteback: 0 kB BdiReclaimable: 321408 kB BdiDirtyThresh: 316364 kB DirtyThresh: 381284 kB BackgroundThresh: 190640 kB With an all too familiar trace like the following: .. [<ffffffff8044cda6>] io_schedule_timeout+0x4b/0x79 [<ffffffff80271371>] congestion_wait+0x66/0x80 [<ffffffff802457bd>] autoremove_wake_function+0x0/0x2e [<ffffffff8026c64d>] balance_dirty_pages_ratelimited_nr+0x21d/0x2b1 [<ffffffff80268191>] generic_file_buffered_write+0x5f3/0x711 I'm _hoping_ your simple/elegant patch can enable me to drop my 2.6.22 per-bdi backport and all will be right with the world. What do you think? Mike --
| david | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| David Woodhouse | [GIT *] Allow request_firmware() to be satisfied from in-kernel, use it in more dr... |
| Philipp Marek | Re: sys_chroot+sys_fchdir Fix |
| Greg Kroah-Hartman | [PATCH 008/196] Chinese: add translation of volatile-considered-harmful.txt |
git: | |
| Krishna Kumar | [PATCH 9/10 REV5] [IPoIB] Implement batching |
| Gerrit Renker | [PATCH 15/37] dccp: Set per-connection CCIDs via socket options |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| David Miller | [GIT]: Networking |
