Re: [PATCH 2/2] mm: Implement writeback livelock avoidance using page tagging

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jun 07, 2010 at 06:09:03PM +0200, Jan Kara wrote:
> On Sat 05-06-10 11:38:02, Nick Piggin wrote:
> > On Fri, Jun 04, 2010 at 08:47:11PM +0200, Jan Kara wrote:
> > > +	if (wbc->sync_mode == WB_SYNC_ALL)
> > > +		tag_pages_for_writeback(mapping, index, end);
> > 
> > I wonder if this is too much spinlock latency in a huge dirty file?
> > Some kid of batching of the operation perhaps would be good?
>   You mean like copy tags for 4096 pages, then cond_resched the spin lock
> and continue? That should be doable but it will give tasks that try to
> livelock us more time (i.e. if there were 4096 tasks creating dirty pages
> than probably they would be able to livelock us, won't they? Maybe we don't
> care?).

Not 100% sure. I think that if we've got the inode in I_SYNC state, it
should stop cleaning and dirtiers will get throttled.

Even if writeback was able to continue on that inode, it would be a big
achievement to dirty then clean pages as fast as we are able to tag them
in batches of 4096 :)

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]