Date: Sat, 11 Apr 2015 12:57:13 -0500 From: Alan Cox <alc@rice.edu> To: Svatopluk Kraus <onwahe@gmail.com>, freebsd-current@freebsd.org, alc@freebsd.org Subject: Re: [patch] deadlock in vm_reserv_reclaim_contig() Message-ID: <55296079.2010104@rice.edu> In-Reply-To: <CAFHCsPWEhugZP6ZyFLD%2Bf-h721HBmY-7FzJdRV0yj3b0VH6N8A@mail.gmail.com> References: <CAFHCsPWEhugZP6ZyFLD%2Bf-h721HBmY-7FzJdRV0yj3b0VH6N8A@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
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 >=3D n. > The patch looks correct. I'm just going to tweak the comment, and then I'll commit it.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?55296079.2010104>