From: Baoquan He <bhe@redhat.com>
To: Uladzislau Rezki <urezki@gmail.com>
Cc: rulinhuang <rulin.huang@intel.com>,
akpm@linux-foundation.org, colin.king@intel.com,
hch@infradead.org, linux-kernel@vger.kernel.org,
linux-mm@kvack.org, lstoakes@gmail.com, tianyou.li@intel.com,
tim.c.chen@intel.com, wangyang.guo@intel.com,
zhiguo.zhou@intel.com
Subject: Re: [PATCH v7 1/2] mm/vmalloc: Moved macros with no functional change happened
Date: Thu, 7 Mar 2024 09:23:10 +0800 [thread overview]
Message-ID: <ZekW/nGXfTqOlvPZ@MiWiFi-R3L-srv> (raw)
In-Reply-To: <Zei9n-VMxtzG8z4Y@pc636>
On 03/06/24 at 08:01pm, Uladzislau Rezki wrote:
> On Fri, Mar 01, 2024 at 10:54:16AM -0500, rulinhuang wrote:
......
>
> Sorry for the late answer, i also just noticed this email. It was not in
> my inbox...
>
> OK, now you move part of the per-cpu allocator on the top and leave
> another part down making it split. This is just for the:
>
> BUG_ON(va_flags & VMAP_RAM);
>
> VMAP_RAM macro. Do we really need this BUG_ON()?
Sorry, I suggested that when reviewing v5:
https://lore.kernel.org/all/ZdiltpK5fUvwVWtD@MiWiFi-R3L-srv/T/#u
About part of per-cpu kva allocator moving and the split making, I would
argue that we will have vmap_nodes defintion and basic helper functions
like addr_to_node_id() etc at top, and leave other part like
size_to_va_pool(), node_pool_add_va() etc down. These are similar.
While about whether we should add 'BUG_ON(va_flags & VMAP_RAM);', I am
not sure about it. When I suggested that, I am also hesitant. From the
current code, alloc_vmap_area() is called in below three functions, only
__get_vm_area_node() will pass the non-NULL vm.
new_vmap_block() -|
vm_map_ram() ----> alloc_vmap_area()
__get_vm_area_node() -|
It could be wrongly passed in the future? Only checking if vm is
non-NULL makes me feel a little unsafe. While I am fine if removing the
BUG_ON, because there's no worry in the current code. We can wait and
see in the future.
if (vm) {
BUG_ON(va_flags & VMAP_RAM);
setup_vmalloc_vm(vm, va, flags, caller);
}
Thanks
Baoquan
next prev parent reply other threads:[~2024-03-07 1:23 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-01 15:54 [PATCH v7 0/2] mm/vmalloc: lock contention optimization under multi-threading rulinhuang
2024-03-01 15:54 ` [PATCH v7 1/2] mm/vmalloc: Moved macros with no functional change happened rulinhuang
2024-03-06 13:23 ` Baoquan He
2024-03-06 19:01 ` Uladzislau Rezki
2024-03-07 1:23 ` Baoquan He [this message]
2024-03-07 3:01 ` Huang, Rulin
2024-03-07 3:32 ` Baoquan He
2024-03-07 5:48 ` Huang, Rulin
2024-03-07 19:53 ` Uladzislau Rezki
2024-03-07 19:16 ` Uladzislau Rezki
2024-03-08 8:23 ` Baoquan He
2024-03-08 10:28 ` Uladzislau Rezki
2024-03-09 4:54 ` Baoquan He
2024-03-01 15:54 ` [PATCH v7 2/2] mm/vmalloc: Eliminated the lock contention from twice to once rulinhuang
2024-03-06 13:55 ` Baoquan He
2024-03-06 9:18 ` [PATCH v7 0/2] mm/vmalloc: lock contention optimization under multi-threading Huang, Rulin
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=ZekW/nGXfTqOlvPZ@MiWiFi-R3L-srv \
--to=bhe@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=colin.king@intel.com \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lstoakes@gmail.com \
--cc=rulin.huang@intel.com \
--cc=tianyou.li@intel.com \
--cc=tim.c.chen@intel.com \
--cc=urezki@gmail.com \
--cc=wangyang.guo@intel.com \
--cc=zhiguo.zhou@intel.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.