diff mbox

arm64: remove dead code

Message ID 1437069533-22103-1-git-send-email-msalter@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Mark Salter July 16, 2015, 5:58 p.m. UTC
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(-)

Comments

Ard Biesheuvel July 17, 2015, 6:49 a.m. UTC | #1
(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
>
Ard Biesheuvel July 17, 2015, 6:50 a.m. UTC | #2
(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
>>
Will Deacon July 17, 2015, 9:45 a.m. UTC | #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
Ard Biesheuvel July 17, 2015, 9:46 a.m. UTC | #4
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
Geoff Levand July 17, 2015, 5:42 p.m. UTC | #5
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 mbox

Patch

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)