[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1595931748.6mal1nph7g.astroid@bobo.none>
Date: Tue, 28 Jul 2020 20:37:34 +1000
From: Nicholas Piggin <npiggin@...il.com>
To: "linux-arch@...r.kernel.org" <linux-arch@...r.kernel.org>,
Vineet Gupta <Vineet.Gupta1@...opsys.com>
Cc: Arnd Bergmann <arnd@...db.de>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-mm@...ck.org" <linux-mm@...ck.org>
Subject: Re: [PATCH 01/24] asm-generic: add generic versions of mmu context
functions
Excerpts from Vineet Gupta's message of July 28, 2020 2:01 pm:
> On 7/27/20 8:33 PM, Nicholas Piggin wrote:
>> Many of these are no-ops on many architectures, so extend mmu_context.h
>> to cover MMU and NOMMU, and split the NOMMU bits out to nommu_context.h
>>
>
>> -static inline void switch_mm(struct mm_struct *prev,
>> - struct mm_struct *next,
>> - struct task_struct *tsk)
>> +/**
>> + * activate_mm - called after exec switches the current task to a new mm, to switch to it
>> + * @prev_mm: previous mm of this task
>> + * @next_mm: new mm
>> + */
>> +#ifndef activate_mm
>> +static inline void activate_mm(struct mm_struct *prev_mm,
>> + struct mm_struct *next_mm)
>> {
>> + switch_mm(prev_mm, next_mm, current);
>> }
>> +#endif
>
> Is activate_mm() really needed now. It seems most arches have
> activate_mm(p, n) -> switch_mm(p, n, NULL)
>
> And if we are passing current, that can be pushed inside switch_mm()
Thanks for taking a look, I think there may be more consolidation
like this possible, and certainly some of the arch patches could
have gone a bit further.
I wanted to be fairly careful to make only quite trivial changes
(only the obvious no-ops) for the first iteration, but once this
is in the tree it should become a fair bit easier to do some
of your suggestions.
There's a few things that make activate_mm->switch_mm not quite
simple - alpha, nios2, parisc, s390, maybe x86.
Thanks,
Nick
Powered by blists - more mailing lists