2015-03-13 오후 9:12에 Roman Pen 이(가) 쓴 글: > Hello all. > > Recently I came across high fragmentation of vm_map_ram allocator: vmap_block > has free space, but still new blocks continue to appear. Further > investigation > showed that certain mapping/unmapping sequence can exhaust vmalloc space. On > small 32bit systems that's not a big problem, cause purging will be called > soon > on a first allocation failure (alloc_vmap_area), but on 64bit machines, e.g. > x86_64 has 45 bits of vmalloc space, that can be a disaster.
I think the problem you comments is already known so that I wrote comments about it as "it could consume lots of address space through fragmentation". Could you tell me about your situation and reason why it should be avoided? > > Fixing this I also did some tweaks in allocation logic of a new vmap block and > replaced dirty bitmap with min/max dirty range values to make the logic > simpler. > > I would like to receive comments on the following three patches. > > Thanks. > > Roman Pen (3): > mm/vmalloc: fix possible exhaustion of vmalloc space caused by > vm_map_ram allocator > mm/vmalloc: occupy newly allocated vmap block just after allocation > mm/vmalloc: get rid of dirty bitmap inside vmap_block structure > > mm/vmalloc.c | 94 > ++++++++++++++++++++++++++++++++++-------------------------- > 1 file changed, 54 insertions(+), 40 deletions(-) > > Cc: Andrew Morton <a...@linux-foundation.org> > Cc: Nick Piggin <npig...@kernel.dk> > Cc: Eric Dumazet <eduma...@google.com> > Cc: Joonsoo Kim <iamjoonsoo....@lge.com> > Cc: David Rientjes <rient...@google.com> > Cc: WANG Chao <chaow...@redhat.com> > Cc: Fabian Frederick <f...@skynet.be> > Cc: Christoph Lameter <c...@linux.com> > Cc: Gioh Kim <gioh....@lge.com> > Cc: Rob Jones <rob.jo...@codethink.co.uk> > Cc: linux...@kvack.org > Cc: linux-kernel@vger.kernel.org > Cc: sta...@vger.kernel.org > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/