vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Hi, After reading "Using the AIX kernel debugger to investigate module dependencies" I wanted to use the lke command to list the modules belongig to a process. But trying: lke -p <pid> gives only: Struct proc paged out. The only pid that works is the on of init: (0)> lke -p 1 ADDRESS FILE FILESIZE FLAGS MODULE NAME 1 2FF3C584 D0047000 0002B4D5 00021740 shr_xpg5.o/usr/lib/libpthreads.a 2 2FF3C524 D0043000 000038B1 00001740 shr_comm.o/usr/lib/libpthreads.a 3 2FF3C4C4 D00730F8 0000086E 00001740 shr.o/usr/lib/libcrypt.a 4 2FF3C424 D01CE780 001F2092 00001740 shr.o/usr/lib/libc.a 5 2FF3C3C4 10000000 00008B91 00005242 init So what must I do to page struct proc of a process in? Joerg |
| |||
| kdb (0)> lke ? A KERNEXT FUNCTION NAME CACHE exists with 1024 entries max (circular buffer) Usage: lke <entry> to populate the cache Usage: lke -a <address> to populate the cache Usage: lke -l to list the cache Usage: lke -l32 to display loader entries for 32-bit shared libraries Usage: lke -l64 to display loader entries for 64-bit shared libraries Usage: lke -p <slot> to display loader entries for the specified process Usage: lke -n <name> to display the loader entry for the specified loader entry name Usage: lke -s <entry> to populate the cache without printing symbols (0)> lke -p 499 ADDRESS FILE FILESIZE FLAGS MODULE NAME 1 2FF80280 D40630C0 01D7D2F6 00001740 shr.o/usr/lpp/db2_07_01/lib/libdb2e.a 2 2FF80200 D0558920 000069ED 00001740 shr3.o/usr/lib/libC.a 3 2FF80180 D052EA80 00007EDD 00001740 shr2.o/usr/lib/libC.a 4 2FF80100 D0412780 0011B340 00001740 ansi_32.o/usr/lib/libC.a 5 2FF80080 D03E0100 00031919 00001740 shr.o/usr/lib/libC.a 6 2FF3C594 D0043000 000038B1 00001740 shr_comm.o/usr/lib/libpthreads.a 7 2FF3C52C D067D000 00028F60 00021740 shr.o/usr/lib/libpthreads.a 8 2FF3C4CC D00730F8 0000086E 00001740 shr.o/usr/lib/libcrypt.a 9 2FF3C42C D01D0780 001F324A 00001740 shr.o/usr/lib/libc.a 10 2FF3C3C4 10000000 0000B1E4 00005242 db2sysc Use the Slot number .. NOT the PID ... get the slot number from the process subcommand i.e. p * The process id is in lower case hex, so if you want to find a particular PID, convert it to hex then grep for it with the -i. i.e. say PID=150612 which is 0x24C54 in hex, then do this echo "p *" | kdb | grep -i 24C54 pvproc+049800 588 db2sysc ACTIVE 24C54 1F39C 09A3C 005D2 0005C3C5 65 0001 Your slot number is the 2nd col, so then do this to get loaded extensions for slot 588 echo "lke -p 588" | kdb Easy.... Hope this helps Mark Taylor |
| |||
| mark taylor wrote: > > Use the Slot number .. NOT the PID ... _Very_ good. I missed that tiny detail, as I always check the help msg (in kdb) to ensure my usage is correct. Hope the original poster sees this and realizes it was just a UFU on his part... -- Gary R. Hook / AIX PartnerWorld for Developers / These opinions are MINE __________________________________________________ ______________________ |
| ||||
| "Gary R. Hook" <nospam@nospammers.net> wrote in message news:<IyhKb.57$M43.25806907@newssvr11.news.prodigy .com>... > mark taylor wrote: > > > > Use the Slot number .. NOT the PID ... > > _Very_ good. I missed that tiny detail, as I always check the > help msg (in kdb) to ensure my usage is correct. > > Hope the original poster sees this and realizes it was just a UFU > on his part... actually, i am going to correct myself on this one also... >> The process id is in lower case hex, so if you want to find a >> particular PID, convert it to hex then grep for it with the -i. The PID is in uppercase HEX in kdb, lowercase hex in crash (and pstat)... as this is 5.1 and kdb no need for the -i on the grep, but no harm, i always use it cos i havent been into crash or kdb much in the last year or |