[parisc-linux] do_page_fault
Kyle McMartin
kyle at mcmartin.ca
Tue Apr 24 06:50:35 MDT 2007
On Tue, Apr 24, 2007 at 05:41:19AM -0400, Jeff Bailey wrote:
> I've googled a bit and am having trouble finding a guide to interpret
> a do_page_fault message. Are these the result of a userspace app
> behaving poorly? I'm going to try and reduce this to a test case over
> the next few days.
>
> do_page_fault() pid=21916 command='gij-4.1.bin' type=15 address=0x00000004
>
Self explainatory (address is the faulting address)
> YZrvWESTHLNXBCVMcbcbcbcbOGFRQPDI
> PSW: 00000000000001001111111100001111 Not tainted
> r00-03 000000ff0004ff0f 0000000042cdded8 0000000041655863 0000000042dc4030
> r04-07 0000000042c5ced8 0000000042dc4030 0000000042e16600 0000000042e0e198
> r08-11 00000000402fe690 000000004014da80 00000000402f5680 0000000040630460
> r12-15 0000000042e165a0 0000000040391000 00000000c0381308 000000004036cf88
> r16-19 000000004036d308 0000000000000000 0000000000000000 0000000042c5ced8
> r20-23 0000000000000043 00000000400f93b0 0000000041655834 0000000000000800
> r24-27 0000000000000000 0000000000000001 0000000042d93fc4 0000000000011a74
> r28-31 0000000000000000 0000000000000800 00000000c0382180 0000000041bff5bb
General regs
> sr00-03 0000000000892800 0000000000892800 0000000000000000 0000000000892800
> sr04-07 0000000000892800 0000000000892800 0000000000892800 0000000000892800
>
Space regs (this is a user space)
> VZOUICununcqcqcqcqcqcrmunTDVZOUI
> FPSR: 00001000000010001000000000000000
> FPER1: 00000000
> fr00-03 0808800000000000 0000000000000000 0000000000000000 0000000000000000
> fr04-07 4024000000000000 3fe6e2ffbde423e5 3f400000d2400000 3ff0000000000000
> fr08-11 0000000000000028 00000000f000024c 0000000040541380 0000000000000802
> fr12-15 42c5ced80000000b 0000000000000001 42e24000404a01d8 42c5ced8455c4108
> fr16-19 fffffffffffff000 0000000000000000 0000000000000802 00000000405a1000
> fr20-23 00000000455c4398 0000000040541380 42d4ce0013b13bb5 000002bb00000000
> fr24-27 0000000600000000 00000000000225e8 5eb15c1bc135d057 14bb70f5e181fefc
> fr28-31 5eb15c1b9efa484d 7c39793785daed7c 5eb15c1b455c4398 ec0fba0d40541380
>
FPRs
> IASQ: 0000000000892800 0000000000892800
Space queues (front & back)
> IAOQ: 000000004165586f 0000000041655873
The faulting address (and the next address in the queue) with
the prot bits.
> IIR: 0f881083 ISR: 0000000000892800 IOR: 0000000000000004
IIR is the interrupting instruction register, in this case, it's
0: 0f 88 10 83 ldw 4(ret0),r3
So, can plainly see it's a null ptr deref.
> CPU: 0 CR30: 0000000114bc0000 CR31: 0000000040500000
> ORIG_R28: 0000000000000002
> IAOQ[0]: 0x4165586c
> IAOQ[1]: 0x41655870
Actual faulting address (with the low-bits masked)
> RP(r2): 0x41655860
>
Return pointer.
Cheers,
Kyle
More information about the parisc-linux
mailing list