Messages in this thread | | | Date | Thu, 05 Jun 2014 06:33:40 -0500 | From | Felipe Contreras <> | Subject | Interactivity regression since v3.11 in mm/vmscan.c |
| |
Hi,
For a while I've noticed that my machine bogs down in certain situations, usually while doing heavy I/O operations, it is not just the I/O operations, but everything, including the graphical interface, even the mouse pointer.
As far as I can recall this did not happen in the past.
I noticed this specially on certain operations, for example updating a a game on Steam (to an exteranl USB 3.0 device), or copying TV episodes to a USB memory stick (probably flash-based).
Today I decided to finally hunt down the problem, so I created a synthetic test that basically consists on copying a bunch of files from one drive to another (from an SSD to an external USB 3.0). This is pretty similar to what I noticed; the graphical interface slows down.
Then I bisected the issue and it turns out that indeed it wasn't happening in the past, it started happening in v3.11, and it was triggered by this commit:
e2be15f (mm: vmscan: stall page reclaim and writeback pages based on dirty/writepage pages encountered)
Then I went back to the latest stable version (v3.14.5), and commented out the line I think is causing the slow down:
if (nr_unqueued_dirty == nr_taken || nr_immediate) congestion_wait(BLK_RW_ASYNC, HZ/10);
After that I don't notice the slow down any more.
Anybody has any ideas how to fix the issue properly?
-- Felipe Contreras
| |