kernel-hacking-2024-linux-s.../arch/arc/mm
Vineet Gupta 3daa48d1d9 ARC: [ASID] get_new_mmu_context() to conditionally allocate new ASID
ASID allocation changes/1

This patch does 2 things:

(1) get_new_mmu_context() NOW moves mm->ASID to a new value ONLY if it
    was from a prev allocation cycle/generation OR if mm had no ASID
    allocated (vs. before would unconditionally moving to a new ASID)

    Callers desiring unconditional update of ASID, e.g.local_flush_tlb_mm()
    (for parent's address space invalidation at fork) need to first force
    the parent to an unallocated ASID.

(2) get_new_mmu_context() always sets the MMU PID reg with unchanged/new
    ASID value.

The gains are:
- consolidation of all asid alloc logic into get_new_mmu_context()
- avoiding code duplication in switch_mm() for PID reg setting
- Enables future change to fold activate_mm() into switch_mm()

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
2013-08-30 21:42:18 +05:30
..
cache_arc700.c ARC: Code cosmetics (Nothing semantical) 2013-08-29 17:51:15 +05:30
dma.c
extable.c
fault.c mm: invoke oom-killer from remaining unconverted page fault handlers 2013-07-09 10:33:20 -07:00
init.c mm/ARC: prepare for removing num_physpages and simplify mem_init() 2013-07-03 16:07:35 -07:00
ioremap.c
Makefile ARC: [mm] Aliasing VIPT dcache support 4/4 2013-05-09 22:00:57 +05:30
mmap.c ARC: [mm] Aliasing VIPT dcache support 4/4 2013-05-09 22:00:57 +05:30
tlb.c ARC: [ASID] get_new_mmu_context() to conditionally allocate new ASID 2013-08-30 21:42:18 +05:30
tlbex.S ARC: [ASID] Refactor the TLB paranoid debug code 2013-08-30 21:42:18 +05:30