[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20150317145823.3213cba4dc629c716df0fdd9@linux-foundation.org>
Date: Tue, 17 Mar 2015 14:58:23 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: Roman Peniaev <r.peniaev@...il.com>
Cc: Joonsoo Kim <iamjoonsoo.kim@....com>,
Eric Dumazet <edumazet@...gle.com>,
David Rientjes <rientjes@...gle.com>,
WANG Chao <chaowang@...hat.com>,
Fabian Frederick <fabf@...net.be>,
Christoph Lameter <cl@...ux.com>, Gioh Kim <gioh.kim@....com>,
Rob Jones <rob.jones@...ethink.co.uk>, linux-mm@...ck.org,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"stable@...r.kernel.org" <stable@...r.kernel.org>
Subject: Re: [PATCH 1/3] mm/vmalloc: fix possible exhaustion of vmalloc
space caused by vm_map_ram allocator
On Tue, 17 Mar 2015 17:22:46 +0900 Roman Peniaev <r.peniaev@...il.com> wrote:
> >> My second patch fixes this problem.
> >> I occupy the block on allocation and avoid jumping to the search loop.
> >
> > I'm not sure that this fixes above case.
> > 'vm_map_ram (3) * 85' means 85 times vm_map_ram() calls.
> >
> > First vm_map_ram(3) caller could get benefit from your second patch.
> > But, second caller and the other callers in each iteration could not
> > get benefit and should iterate whole list to find suitable free block,
> > because this free block is put to the tail of the list. Am I missing
> > something?
>
> You are missing the fact that we occupy blocks in 2^n.
> So in your example 4 page slots will be occupied (order is 2), not 3.
Could you please
- update the changelogs so they answer the questions which Joonsoo
Kim and Gioh Kim asked
- write a little in-kernel benchmark to test the scenario which
Joonsoo described and include the before and after timing results in
the changelogs
- resend the patchset
Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists