On Tuesday, 6th July 1999, Stephen McKay wrote:
>the make world hangs with cc1 in "objtrm"...
I'm having a fun old conversation with myself here! ;-)
Here's some concrete info:
(kgdb) p/x *(struct vm_object*) 0xc32ea21c
$13 = {object_list = {tqe_next = 0xc3389e58, tqe_prev = 0xc323fdec},
shadow_head = {tqh_first = 0x0, tqh_last = 0xc32ea224}, shadow_list = {
tqe_next = 0xc327b8dc, tqe_prev = 0xc32cb734}, memq = {
tqh_first = 0xc0308e80, tqh_last = 0xc03046ec}, generation = 0x3004,
type = 0x1, size = 0x2a7, ref_count = 0x0, shadow_count = 0x0,
pg_color = 0x5, hash_rand = 0xfd9a69d7, flags = 0x21c8,
paging_in_progress = 0x1, behavior = 0x0, resident_page_count = 0x9,
backing_object = 0x0, backing_object_offset = 0x0, last_read = 0x14,
pager_object_list = {tqe_next = 0xc323c438, tqe_prev = 0xc323a424},
handle = 0x0, un_pager = {vnp = {vnp_size = 0x16}, devp = {devp_pglist = {
tqh_first = 0x16, tqh_last = 0x0}}, swp = {swp_bcount = 0x16}}}
The high points:
ref_count=0
shadow_count=0
type=1 (OBJT_SWAP)
paging_in_progress=1
resident_page_count=9
flags=0x21c8 (onemapping, mightbedirty, writeable, pipwnt, dead)
A typical memory page from this object:
(kgdb) p/x *(struct vm_page*) 0xc02ffd90
$14 = {pageq = {tqe_next = 0xc0317dc0, tqe_prev = 0xc02f1960}, hnext = 0x0,
listq = {tqe_next = 0xc0317dc0, tqe_prev = 0xc02f196c}, object = 0xc32ea21c,
pindex = 0x2f, phys_addr = 0x4f4000, queue = 0x41, flags = 0x0, pc = 0x34,
wire_count = 0x0, hold_count = 0x0, act_count = 0x8, busy = 0x0,
valid = 0xff, dirty = 0xff}
The high points:
queue=inactive
flags=0
wire_count=0
hold_count=0
busy=0
valid=ff
dirty=ff
All 9 of them are like that. So, no busy or PG_BUSY or anything. No paging
really in progress after all. So the object's paging_in_progress count is
out.
Who was watching what code changed recently? Remember I had this problem
on a kernel from 1999/06/16 too. So it's an "old" problem.
Off to research the next installment...
Stephen.
PS I haven't worked out yet how to find the stack of the errant process.
Any hints? The stack trace should be helpful.
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message