Thread (27 messages) 27 messages, 7 authors, 2012-02-01

Re: [PATCH] fix readahead pipeline break caused by block plug

From: Vivek Goyal <vgoyal@redhat.com>
Date: 2012-01-31 14:47:48
Also in: lkml

On Tue, Jan 31, 2012 at 03:59:40PM +0800, Shaohua Li wrote:
Herbert Poetzl reported a performance regression since 2.6.39. The test
is a simple dd read, but with big block size. The reason is:

T1: ra (A, A+128k), (A+128k, A+256k)
T2: lock_page for page A, submit the 256k
T3: hit page A+128K, ra (A+256k, A+384). the range isn't submitted
because of plug and there isn't any lock_page till we hit page A+256k
because all pages from A to A+256k is in memory
T4: hit page A+256k, ra (A+384, A+ 512). Because of plug, the range isn't
submitted again.
Why IO is not submitted because of plug? Doesn't task now get scheduled
out causing an unplug? IOW, are we now busy waiting somewhere preventing
unplug?

Thanks
Vivek

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help