Messages in this thread | | | Date | Tue, 17 Mar 2015 14:58:23 -0700 | From | Andrew Morton <> | 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@gmail.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.
| |