Message ID | 1437069533-22103-1-git-send-email-msalter@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
(adding Geoff and Takahiro) On 16 July 2015 at 19:58, Mark Salter <msalter@redhat.com> wrote: > Commit 68234df4ea79 ("arm64: kill flush_cache_all()") removed > soft_reset() from the kernel. This was the only caller of > setup_mm_for_reboot(), so remove that also. > I am wondering if setup_mm_for_reboot() is being used in the kexec patches. Perhaps we should check that before removing it. Geoff? > Signed-off-by: Mark Salter <msalter@redhat.com> > --- > arch/arm64/include/asm/mmu.h | 1 - > arch/arm64/mm/mmu.c | 11 ----------- > 2 files changed, 12 deletions(-) > > diff --git a/arch/arm64/include/asm/mmu.h b/arch/arm64/include/asm/mmu.h > index 79fcfb0..0302087 100644 > --- a/arch/arm64/include/asm/mmu.h > +++ b/arch/arm64/include/asm/mmu.h > @@ -28,7 +28,6 @@ typedef struct { > #define ASID(mm) ((mm)->context.id & 0xffff) > > extern void paging_init(void); > -extern void setup_mm_for_reboot(void); > extern void __iomem *early_io_map(phys_addr_t phys, unsigned long virt); > extern void init_mem_pgprot(void); > extern void create_pgd_mapping(struct mm_struct *mm, phys_addr_t phys, > diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c > index a4ede4e..63012fe 100644 > --- a/arch/arm64/mm/mmu.c > +++ b/arch/arm64/mm/mmu.c > @@ -461,17 +461,6 @@ void __init paging_init(void) > } > > /* > - * Enable the identity mapping to allow the MMU disabling. > - */ > -void setup_mm_for_reboot(void) > -{ > - cpu_set_reserved_ttbr0(); > - flush_tlb_all(); > - cpu_set_idmap_tcr_t0sz(); > - cpu_switch_mm(idmap_pg_dir, &init_mm); > -} > - > -/* > * Check whether a kernel address is valid (derived from arch/x86/). > */ > int kern_addr_valid(unsigned long addr) > -- > 2.4.3 >
(use Geoff's correct email address) On 17 July 2015 at 08:49, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote: > (adding Geoff and Takahiro) > > On 16 July 2015 at 19:58, Mark Salter <msalter@redhat.com> wrote: >> Commit 68234df4ea79 ("arm64: kill flush_cache_all()") removed >> soft_reset() from the kernel. This was the only caller of >> setup_mm_for_reboot(), so remove that also. >> > > I am wondering if setup_mm_for_reboot() is being used in the kexec > patches. Perhaps we should check that before removing it. > > Geoff? > > >> Signed-off-by: Mark Salter <msalter@redhat.com> >> --- >> arch/arm64/include/asm/mmu.h | 1 - >> arch/arm64/mm/mmu.c | 11 ----------- >> 2 files changed, 12 deletions(-) >> >> diff --git a/arch/arm64/include/asm/mmu.h b/arch/arm64/include/asm/mmu.h >> index 79fcfb0..0302087 100644 >> --- a/arch/arm64/include/asm/mmu.h >> +++ b/arch/arm64/include/asm/mmu.h >> @@ -28,7 +28,6 @@ typedef struct { >> #define ASID(mm) ((mm)->context.id & 0xffff) >> >> extern void paging_init(void); >> -extern void setup_mm_for_reboot(void); >> extern void __iomem *early_io_map(phys_addr_t phys, unsigned long virt); >> extern void init_mem_pgprot(void); >> extern void create_pgd_mapping(struct mm_struct *mm, phys_addr_t phys, >> diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c >> index a4ede4e..63012fe 100644 >> --- a/arch/arm64/mm/mmu.c >> +++ b/arch/arm64/mm/mmu.c >> @@ -461,17 +461,6 @@ void __init paging_init(void) >> } >> >> /* >> - * Enable the identity mapping to allow the MMU disabling. >> - */ >> -void setup_mm_for_reboot(void) >> -{ >> - cpu_set_reserved_ttbr0(); >> - flush_tlb_all(); >> - cpu_set_idmap_tcr_t0sz(); >> - cpu_switch_mm(idmap_pg_dir, &init_mm); >> -} >> - >> -/* >> * Check whether a kernel address is valid (derived from arch/x86/). >> */ >> int kern_addr_valid(unsigned long addr) >> -- >> 2.4.3 >>
On Fri, Jul 17, 2015 at 07:50:30AM +0100, Ard Biesheuvel wrote: > (use Geoff's correct email address) > > On 17 July 2015 at 08:49, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote: > > (adding Geoff and Takahiro) > > > > On 16 July 2015 at 19:58, Mark Salter <msalter@redhat.com> wrote: > >> Commit 68234df4ea79 ("arm64: kill flush_cache_all()") removed > >> soft_reset() from the kernel. This was the only caller of > >> setup_mm_for_reboot(), so remove that also. > >> > > > > I am wondering if setup_mm_for_reboot() is being used in the kexec > > patches. Perhaps we should check that before removing it. Well, given that I can't see any kexec patches on the radar for 4.3, I'm happy to merge this clean-up and Geoff can reintroduce the function in his series if he needs it. Will
On 17 July 2015 at 11:45, Will Deacon <will.deacon@arm.com> wrote: > On Fri, Jul 17, 2015 at 07:50:30AM +0100, Ard Biesheuvel wrote: >> (use Geoff's correct email address) >> >> On 17 July 2015 at 08:49, Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote: >> > (adding Geoff and Takahiro) >> > >> > On 16 July 2015 at 19:58, Mark Salter <msalter@redhat.com> wrote: >> >> Commit 68234df4ea79 ("arm64: kill flush_cache_all()") removed >> >> soft_reset() from the kernel. This was the only caller of >> >> setup_mm_for_reboot(), so remove that also. >> >> >> > >> > I am wondering if setup_mm_for_reboot() is being used in the kexec >> > patches. Perhaps we should check that before removing it. > > Well, given that I can't see any kexec patches on the radar for 4.3, I'm > happy to merge this clean-up and Geoff can reintroduce the function in > his series if he needs it. > OK, fair enough
Hi, On Fri, 2015-07-17 at 08:50 +0200, Ard Biesheuvel wrote: > > On 16 July 2015 at 19:58, Mark Salter <msalter@redhat.com> wrote: > >> Commit 68234df4ea79 ("arm64: kill flush_cache_all()") removed > >> soft_reset() from the kernel. This was the only caller of > >> setup_mm_for_reboot(), so remove that also. > > > > I am wondering if setup_mm_for_reboot() is being used in the kexec > > patches. Perhaps we should check that before removing it. The whole CPU reset support that kexec was using was removed. I started on reimplementing a new cpu_reset() routine (in my master branch at [1]), but I can only work on it when I have some extra time, and these days that is not very often. [1] https://git.kernel.org/cgit/linux/kernel/git/geoff/linux-kexec.git/ -Geoff
diff --git a/arch/arm64/include/asm/mmu.h b/arch/arm64/include/asm/mmu.h index 79fcfb0..0302087 100644 --- a/arch/arm64/include/asm/mmu.h +++ b/arch/arm64/include/asm/mmu.h @@ -28,7 +28,6 @@ typedef struct { #define ASID(mm) ((mm)->context.id & 0xffff) extern void paging_init(void); -extern void setup_mm_for_reboot(void); extern void __iomem *early_io_map(phys_addr_t phys, unsigned long virt); extern void init_mem_pgprot(void); extern void create_pgd_mapping(struct mm_struct *mm, phys_addr_t phys, diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c index a4ede4e..63012fe 100644 --- a/arch/arm64/mm/mmu.c +++ b/arch/arm64/mm/mmu.c @@ -461,17 +461,6 @@ void __init paging_init(void) } /* - * Enable the identity mapping to allow the MMU disabling. - */ -void setup_mm_for_reboot(void) -{ - cpu_set_reserved_ttbr0(); - flush_tlb_all(); - cpu_set_idmap_tcr_t0sz(); - cpu_switch_mm(idmap_pg_dir, &init_mm); -} - -/* * Check whether a kernel address is valid (derived from arch/x86/). */ int kern_addr_valid(unsigned long addr)
Commit 68234df4ea79 ("arm64: kill flush_cache_all()") removed soft_reset() from the kernel. This was the only caller of setup_mm_for_reboot(), so remove that also. Signed-off-by: Mark Salter <msalter@redhat.com> --- arch/arm64/include/asm/mmu.h | 1 - arch/arm64/mm/mmu.c | 11 ----------- 2 files changed, 12 deletions(-)