Skip site navigation (1)Skip section navigation (2)
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>

index | next in thread | previous in thread | raw e-mail

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.




help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?55296079.2010104>