On 9/19/16, 7:42 PM, "osv-dev@googlegroups.com on behalf of Nadav Har'El"
wrote:
>diff --git a/core/mempool.cc b/core/mempool.cc
>index 50c938f..fad046d 100644
>--- a/core/mempool.cc
>+++ b/core/mempool.cc
>@@ -1099,9 +1099,12 @@ struct l1 {
> }
> static void* alloc_page_local();
>
Thanks for this patch. Looks serious, and I wonder if it explains
https://github.com/cloudius-systems/osv/issues/755
Some comments and questions below.
On Fri, Sep 9, 2016 at 8:12 PM, Timmons C. Player <
timmons.pla...@spirent.com> wrote:
> Under high levels of memory page churn, the array of pa
> l1::free_page_local and pushed into the page_array before l1::unfill was
> called. This caused the page array to spill over into the next page of
> memory.
>
> Timmons
>
> From: Paweł Dziepak
> Date: Wednesday, September 14, 2016 at 7:15 PM
> To: Timmons Player
> Cc
legroups.com>>
Subject: Re: [PATCH] memory: Prevent array overflow in l1 page buffer pool.
On 9 September 2016 at 18:12, Timmons C. Player
mailto:timmons.pla...@spirent.com>> wrote:
Under high levels of memory page churn, the array of pages in the
l1 page buffer pool can overflow a
On 9 September 2016 at 18:12, Timmons C. Player
wrote:
> Under high levels of memory page churn, the array of pages in the
> l1 page buffer pool can overflow and overwrite the data in adjacent
> memory pages. This change replaces the array with a fixed sized ring.
>
> It also removes the looping