On Tue, Jun 8, 2021 at 1:56 PM Kefeng Wang <wangkefeng.w...@huawei.com> wrote: > > Add setup_initial_init_mm() helper to setup kernel text, > data and brk. > > Cc: linux-snps-arc@lists.infradead.org > Cc: linux-arm-ker...@lists.infradead.org > Cc: linux-c...@vger.kernel.org > Cc: uclinux-h8-de...@lists.sourceforge.jp > Cc: linux-m...@lists.linux-m68k.org > Cc: openr...@lists.librecores.org > Cc: linuxppc-...@lists.ozlabs.org > Cc: linux-ri...@lists.infradead.org > Cc: linux...@vger.kernel.org > Cc: linux-s...@vger.kernel.org > Cc: x...@kernel.org > Signed-off-by: Kefeng Wang <wangkefeng.w...@huawei.com> > --- > include/linux/mm.h | 3 +++ > mm/init-mm.c | 9 +++++++++ > 2 files changed, 12 insertions(+) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index c274f75efcf9..02aa057540b7 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -244,6 +244,9 @@ int __add_to_page_cache_locked(struct page *page, struct > address_space *mapping, > > #define lru_to_page(head) (list_entry((head)->prev, struct page, lru)) > > +void setup_initial_init_mm(void *start_code, void *end_code, > + void *end_data, void *brk); > +
Gentle query -> is there any limitation to add inline functions in setup_arch() functions ? > /* > * Linux kernel virtual memory manager primitives. > * The idea being to have a "virtual" mm in the same way > diff --git a/mm/init-mm.c b/mm/init-mm.c > index 153162669f80..b4a6f38fb51d 100644 > --- a/mm/init-mm.c > +++ b/mm/init-mm.c > @@ -40,3 +40,12 @@ struct mm_struct init_mm = { > .cpu_bitmap = CPU_BITS_NONE, > INIT_MM_CONTEXT(init_mm) > }; > + > +void setup_initial_init_mm(void *start_code, void *end_code, > + void *end_data, void *brk) > +{ > + init_mm.start_code = (unsigned long)start_code; > + init_mm.end_code = (unsigned long)end_code; > + init_mm.end_data = (unsigned long)end_data; > + init_mm.brk = (unsigned long)brk; > +} > -- > 2.26.2 > > _______________________________________________ linux-snps-arc mailing list linux-snps-arc@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-snps-arc