Messages in this thread | | | Date | Tue, 28 Jul 2020 20:37:34 +1000 | From | Nicholas Piggin <> | 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
| |