The non-interruptible sleep of the memory pressure posting thread results in higher reported load average. Make this sleep interruptible.
Unified · Split
| @@ -1171,7 +1171,8 @@ static int dm_thread_func(void *dm_dev) · 1170 unmodified lines | |||
| 1171 | int t; | 1171 | int t; |
| 1172 | 1172 | ||
| 1173 | while (!kthread_should_stop()) { | 1173 | while (!kthread_should_stop()) { |
| 1174 | t = wait_for_completion_timeout(&dm_device.config_event, 1*HZ); | 1174 | t = wait_for_completion_interruptible_timeout( |
| 1175 | &dm_device.config_event, 1*HZ); | ||
| 1175 | /* | 1176 | /* |
| 1176 | * The host expects us to post information on the memory | 1177 | * The host expects us to post information on the memory |
| 1177 | * pressure every second. | 1178 | * pressure every second. |