powerpc/xmon: Paged output for paca display
authorSam bobroff <sam.bobroff@au1.ibm.com>
Thu, 8 Oct 2015 00:50:23 +0000 (11:50 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Thu, 15 Oct 2015 09:32:01 +0000 (20:32 +1100)
commit958b7c80507a6eb847777b0d6d99d2cad08c529c
tree045104d89a48fe4c75a2f34625224c94955830e9
parentb340587e68b479e52039f800d7c60abd417e1975
powerpc/xmon: Paged output for paca display

The paca display is already more than 24 lines, which can be problematic
if you have an old school 80x24 terminal, or more likely you are on a
virtual terminal which does not scroll for whatever reason.

This patch adds a new command "#", which takes a single (hex) numeric
argument: lines per page. It will cause the output of "dp" and "dpa"
to be broken into pages, if necessary.

Sample output:

0:mon> # 10
0:mon> dp1
paca for cpu 0x1 @ c00000000fdc0480:
 possible         = yes
 present          = yes
 online           = yes
 lock_token       = 0x8000             (0x8)
 paca_index       = 0x1                (0xa)
 kernel_toc       = 0xc000000000eb2400 (0x10)
 kernelbase       = 0xc000000000000000 (0x18)
 kernel_msr       = 0xb000000000001032 (0x20)
 emergency_sp     = 0xc00000003ffe8000 (0x28)
 mc_emergency_sp  = 0xc00000003ffe4000 (0x2e0)
 in_mce           = 0x0                (0x2e8)
 data_offset      = 0x7f170000         (0x30)
 hw_cpu_id        = 0x8                (0x38)
 cpu_start        = 0x1                (0x3a)
 kexec_state      = 0x0                (0x3b)
[Hit a key (a:all, q:truncate, any:next page)]
0:mon>
 __current        = 0xc00000007e696620 (0x290)
 kstack           = 0xc00000007e6ebe30 (0x298)
 stab_rr          = 0xb                (0x2a0)
 saved_r1         = 0xc00000007ef37860 (0x2a8)
 trap_save        = 0x0                (0x2b8)
 soft_enabled     = 0x0                (0x2ba)
 irq_happened     = 0x1                (0x2bb)
 io_sync          = 0x0                (0x2bc)
 irq_work_pending = 0x0                (0x2bd)
 nap_state_lost   = 0x0                (0x2be)
0:mon>

Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
[mpe: Use bool, make some variables static]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/xmon/nonstdio.c
arch/powerpc/xmon/nonstdio.h
arch/powerpc/xmon/xmon.c