[PATCH v2 00/10] MIPS: dump_tlb improvements

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patchset improves dump_tlb.c to use proper hazard macros (for which
new macros are added for tlb reads), and to take into account the global
bit, the EHINV invalid bit, RI & XI bits, and XPA.

Patch 1 also adds a MIPS specific SysRq operation ('x') to dump the TLBs
on running CPUs. This is mainly for debug purposes, however I've
included it for completeness as an RFC patch, in case others find it
helpful.

Patches 2 & 4 add and make use of tlbr related hazard macros (which are
technically distinct, though identically implemented, to tlbw hazards).

Patch 3 adds EntryLo defines used in later patches (particularly patch
6).

Patches 5-8 improve the TLB entry matching so as to more closely match
which entries hardware treats as matching (taking the global and EHINV
bits into account), and does some refactoring while at it.

Patches 9-10 improve the TLB printing to handle RI & XI bits (which show
up in the physical address at the moment), and XPA (where the top of the
physical address needs to be read from EntryLo registers with mfhc0).

Changes in v2:
- New patch 3 (Maceij) including reordered MIPS_ENTRYLO_RI/XI
  definitions from patch 7 of v1 (patch 9 in v2).
- New patch 6 (Maciej), using mipsregs.h EntryLo bit definitions.
- Patch 7: Check both global bits and add comment (Ralf).
- Patch 7: Fix typo s/absense/absence/ (Maciej).
- Patch 7: Use MIPS_ENTRYLO_G definition (Maciej).
- Patch 7: Update r3k_dump_tlb.c too (Maciej - please test).
- Dropped patch 9 (v1) (a typo which Ralf has already got upstream).

James Hogan (10):
  MIPS: Add SysRq operation to dump TLBs on all CPUs
  MIPS: hazards: Add hazard macros for tlb read
  MIPS: mipsregs.h: Add EntryLo bit definitions
  MIPS: dump_tlb: Use tlbr hazard macros
  MIPS: dump_tlb: Refactor TLB matching
  MIPS: dump_tlb: Make use of EntryLo bit definitions
  MIPS: dump_tlb: Take global bit into account
  MIPS: dump_tlb: Take EHINV bit into account
  MIPS: dump_tlb: Take RI/XI bits into account
  MIPS: dump_tlb: Take XPA into account

 arch/mips/include/asm/hazards.h  |  52 ++++++++++++++++++
 arch/mips/include/asm/mipsregs.h |  22 ++++++++
 arch/mips/kernel/Makefile        |   1 +
 arch/mips/kernel/sysrq.c         |  77 +++++++++++++++++++++++++++
 arch/mips/lib/dump_tlb.c         | 110 +++++++++++++++++++++++++--------------
 arch/mips/lib/r3k_dump_tlb.c     |  13 ++---
 drivers/tty/sysrq.c              |   1 +
 7 files changed, 231 insertions(+), 45 deletions(-)
 create mode 100644 arch/mips/kernel/sysrq.c

Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
Cc: Steven J. Hill <Steven.Hill@xxxxxxxxxx>
Cc: David Daney <ddaney@xxxxxxxxxxxxxxxxxx>
Cc: linux-mips@xxxxxxxxxxxxxx
-- 
2.3.6






[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux