All of lore.kernel.org
 help / color / mirror / Atom feed
From: "lipeifeng@oppo.com" <lipeifeng@oppo.com>
To: akpm <akpm@linux-foundation.org>
Cc: peifeng55 <peifeng55@gmail.com>,  linux-mm <linux-mm@kvack.org>,
	 linux-kernel <linux-kernel@vger.kernel.org>,
	 "Barry Song" <21cnbao@gmail.com>,
	 zhangshiming <zhangshiming@oppo.com>
Subject: Re: Re: [PATCH] mm: modify the method to search addr in unmapped_area
Date: Thu, 21 Apr 2022 10:20:58 +0800	[thread overview]
Message-ID: <2022042110194808256629@oppo.com> (raw)
In-Reply-To: 20220420145739.425c01603a6f63e550e556ed@linux-foundation.org

[-- Attachment #1: Type: text/plain, Size: 2283 bytes --]

Hi Andrew Morton:

> Unfortunately this part of the code is undergoing a lot of change
> lately.  How serious is this problem?  Please tell us how often the
> problem is being observed, under what circumstances, etc.

I have observed some problems in process-TIF_32BIT, such as Wechat
and others Android APP.

In the above processes which the single largest remaining free-addr-space
is 12Mbytes in some case, we found that the processes wound fail to alloc
a 12Mbytes(align 1M) in the old methods so that Out-of-Memory.

The idea of this patch is the same as the following patch which is used for
unmapped_area_topdown, as follows:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/mm/mmap.c?id=5c6c46912cc0182fadd4b5f0eab029ccbbcc1ba3 

Thank you very much indeed to ask such nice question and I wish I have given
a clear reply. Pls let me know If there are any problems you found.



lipeifeng@oppo.com
 
From: Andrew Morton
Date: 2022-04-21 05:57
To: lipeifeng
CC: peifeng55; linux-mm; linux-kernel; 21cnbao; zhangshiming
Subject: Re: [PATCH] mm: modify the method to search addr in unmapped_area
On Wed, 20 Apr 2022 16:40:39 +0800 lipeifeng@oppo.com wrote:
 
> The old method will firstly find the space in len(info->length
> + info->align_mask), and get address at the desired alignment.
> 
> Sometime, addr  would be failed if there are enough
> addr space in kernel by above method, e.g., you can't get a
> addr sized in 1Mbytes, align_mask 1Mbytes successfully although
> there are still (2M-1)bytes space in kernel.
> 
> This patch would fix thr problem above by the new method: find the
> space in info->length and judge if at the desired info->align_mask
> at the same time.
> 
> Do a simple test in TIF_32BIT with unmapped_area:
> - Try to take addr (size:1M align:2M) until allocation fails;
> - Try to take addr (size:1M align:1M) and account how to space can
> be alloced successfully.
> 
> Before optimization: alloced 0     bytes.
> After  optimization: alloced 1.9+G bytes.
 
Thanks.
 
Unfortunately this part of the code is undergoing a lot of change
lately.  How serious is this problem?  Please tell us how often the
problem is being observed, under what circumstances, etc.
 

[-- Attachment #2: Type: text/html, Size: 7884 bytes --]

  reply	other threads:[~2022-04-21  2:21 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-20  8:40 [PATCH] mm: modify the method to search addr in unmapped_area lipeifeng
2022-04-20 21:57 ` Andrew Morton
2022-04-21  2:20   ` lipeifeng [this message]
2022-04-24 10:33     ` lipeifeng

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2022042110194808256629@oppo.com \
    --to=lipeifeng@oppo.com \
    --cc=21cnbao@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=peifeng55@gmail.com \
    --cc=zhangshiming@oppo.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.