Re: [patch] deadlock in vm_reserv_reclaim_contig()

2015-04-12 Thread Svatopluk Kraus
On Sat, Apr 11, 2015 at 7:57 PM, Alan Cox a...@rice.edu wrote:
 On 04/10/2015 04:11, Svatopluk Kraus wrote:
 Hi,

 my RPI-B has been stuck in vm_reserv_reclaim_contig() due to a bug
 within that function. I can reproduce that easily on my two-core
 pandaboard when I limit all memory in system to 128MiB and run make
 -j16 kernel-toolchain. It happens in few seconds.

 The patch should be self-explanatory. The problem is that there is a
 free page found in reservation which does not fulfill alignment
 requirement, thus next free page should be looked for. However, due to
 the bug, the same free page is found out again and again.

 The patch takes into account that shift by m on n-bit arch has an
 undefined behaviour if m = n.


 The patch looks correct.  I'm just going to tweak the comment, and then
 I'll commit it.


Thank you.
Svatopluk Kraus
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: [patch] deadlock in vm_reserv_reclaim_contig()

2015-04-11 Thread Alan Cox
On 04/10/2015 04:11, Svatopluk Kraus wrote:
 Hi,

 my RPI-B has been stuck in vm_reserv_reclaim_contig() due to a bug
 within that function. I can reproduce that easily on my two-core
 pandaboard when I limit all memory in system to 128MiB and run make
 -j16 kernel-toolchain. It happens in few seconds.

 The patch should be self-explanatory. The problem is that there is a
 free page found in reservation which does not fulfill alignment
 requirement, thus next free page should be looked for. However, due to
 the bug, the same free page is found out again and again.

 The patch takes into account that shift by m on n-bit arch has an
 undefined behaviour if m = n.


The patch looks correct.  I'm just going to tweak the comment, and then
I'll commit it.


___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org