[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <dbce0b982b71c563e282727c42d0719b1ae491fd.camel@intel.com>
Date: Thu, 28 Mar 2024 03:31:32 +0000
From: "Edgecombe, Rick P" <rick.p.edgecombe@...el.com>
To: "Williams, Dan J" <dan.j.williams@...el.com>, "keescook@...omium.org"
<keescook@...omium.org>, "luto@...nel.org" <luto@...nel.org>,
"dave.hansen@...ux.intel.com" <dave.hansen@...ux.intel.com>,
"debug@...osinc.com" <debug@...osinc.com>, "akpm@...ux-foundation.org"
<akpm@...ux-foundation.org>, "Liam.Howlett@...cle.com"
<Liam.Howlett@...cle.com>, "kirill.shutemov@...ux.intel.com"
<kirill.shutemov@...ux.intel.com>, "mingo@...hat.com" <mingo@...hat.com>,
"christophe.leroy@...roup.eu" <christophe.leroy@...roup.eu>,
"tglx@...utronix.de" <tglx@...utronix.de>, "hpa@...or.com" <hpa@...or.com>,
"peterz@...radead.org" <peterz@...radead.org>, "bp@...en8.de" <bp@...en8.de>,
"x86@...nel.org" <x86@...nel.org>, "broonie@...nel.org" <broonie@...nel.org>
CC: "linux-sgx@...r.kernel.org" <linux-sgx@...r.kernel.org>,
"linux-s390@...r.kernel.org" <linux-s390@...r.kernel.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>, "linux-cxl@...r.kernel.org"
<linux-cxl@...r.kernel.org>, "sparclinux@...r.kernel.org"
<sparclinux@...r.kernel.org>, "linux-kernel@...r.kernel.org"
<linux-kernel@...r.kernel.org>, "io-uring@...r.kernel.org"
<io-uring@...r.kernel.org>, "linux-fsdevel@...r.kernel.org"
<linux-fsdevel@...r.kernel.org>, "nvdimm@...ts.linux.dev"
<nvdimm@...ts.linux.dev>, "bpf@...r.kernel.org" <bpf@...r.kernel.org>
Subject: Re: [PATCH v4 02/14] mm: Switch mm->get_unmapped_area() to a flag
On Tue, 2024-03-26 at 23:38 -0700, Dan Williams wrote:
> > +unsigned long
> > +mm_get_unmapped_area(struct mm_struct *mm, struct file *file,
> > + unsigned long addr, unsigned long len,
> > + unsigned long pgoff, unsigned long flags)
> > +{
>
> Seems like a small waste to have all call sites now need to push an
> additional @mm argument onto the stack just to figure out what function
> to call.
>
> > + if (test_bit(MMF_TOPDOWN, &mm->flags))
> > + return arch_get_unmapped_area_topdown(file, addr, len, pgoff, flags);
> > + return arch_get_unmapped_area(file, addr, len, pgoff, flags);
>
> This seems small enough to be amenable to a static inline, but that
> would require exporting the arch calls which might be painful.
>
> Would it not be possible to drop the @mm argument and just reference
> current->mm internal to this function? Just call this funcion
> current_get_unmapped_area()?
Hmm, you are right. The callers all pass current->mm. The mm argument could be removed.
Powered by blists - more mailing lists