Messages in this thread Patch in this message | | | Date | Thu, 24 Jan 2013 22:57:07 +0800 | From | Fengguang Wu <> | Subject | Re: [PATCH] Negative (setpoint-dirty) in bdi_position_ratio() |
| |
Hi Paul,
> (This patch does not solve the PAE OOM issue.)
You may try the below debug patch. The only way the writeback patches should trigger OOM, I think, is for the number of dirty/writeback pages going out of control.
Or more simple, you may show us the OOM dmesg which will contain the number of dirty pages. Or run this in a continuous loop during your tests, and see how the dirty numbers change before OOM:
while : do grep -E '(Dirty|Writeback)' /proc/meminfo sleep 1 done
Thanks, Fengguang
diff --git a/mm/page-writeback.c b/mm/page-writeback.c index 50f0824..cf1165a 100644 --- a/mm/page-writeback.c +++ b/mm/page-writeback.c @@ -1147,6 +1147,16 @@ pause: if (task_ratelimit) break; + if (nr_dirty > dirty_thresh + dirty_thresh / 2) { + if (printk_ratelimit()) + printk(KERN_WARNING "nr_dirty=%lu dirty_thresh=%lu task_ratelimit=%lu dirty_ratelimit=%lu pos_ratio=%lu\n", + nr_dirty, + dirty_thresh, + task_ratelimit, + dirty_ratelimit, + pos_ratio); + } + /* * In the case of an unresponding NFS server and the NFS dirty * pages exceeds dirty_thresh, give the other good bdi's a pipe
| |