From: Michael H. <HO...@de...> - 2003-08-26 16:07:19
|
Hi, I checked in code last week to get the cpu number for the asm generic version of the PER_CPU asm-generic implementation. This works on s390/s390x for linux-2.6-test3. I am not sure, if it also works on ia32/64. We should not change the output format of the task command, since the graphical frontend qlcrash parses the output of the task command. Michael ------------------------------------------------------------------------ Linux for E-Server Development Phone: +49-7031-16-2360, Bld 71032-03-U09 Email: ho...@de... |---------+--------------------------------------> | | j-n...@ce... | | | Sent by: | | | lkc...@li...ur| | | ceforge.net | | | | | | | | | 22.08.2003 13:07 | | | | |---------+--------------------------------------> >-----------------------------------------------------------------------------------------------------------------------------| | | | To: lkc...@li... | | cc: ya...@ap... | | Subject: Re: [lkcd-devel] lkcdutils-4.2-pre3 available | | | | | >-----------------------------------------------------------------------------------------------------------------------------| Hello, current implementation of print_task_struct() shows just '-' for processes not owning cpu on 2.6 kernel. Is it better to print last cpu always and additional mark for actually running process? The attached patch does this modification. Any comments? Example: - lcrash is running on CPU2. - bash ran on CPU1 while CPU1 executes other process now. (current output of ps) ADDR UID PID PPID STATE FLAGS CPU NAME ============================================================== 0xd4234c80 0 25095 25087 1 0x100 - bash 0xd4a90660 0 25277 24154 0 0x100 2 lcrash (modified version) ADDR UID PID PPID STATE FLAGS CPU NAME ============================================================== 0xd4234c80 0 25095 25087 1 0x100 1 bash 0xd4a90660 0 25270 24154 0 0x100 2* lcrash Best regards. -- NOMURA, Jun'ichi <j-n...@ce..., no...@hp...> Enterprise Linux Group, 1st Computers Software Division, Computers Software Operations Unit, NEC Corporation Index: lcrash/struct.c =================================================================== RCS file: /cvsroot/lkcd/lkcdutils/lcrash/struct.c,v retrieving revision 1.18 diff -u -p -u -p -r1.18 struct.c --- lcrash/struct.c 14 Aug 2003 18:06:15 -0000 1.18 +++ lcrash/struct.c 22 Aug 2003 10:46:12 -0000 @@ -409,10 +409,16 @@ print_task_struct(kaddr_t addr, void *ts print_value(ofp, " ", KL_UINT(tsp, "task_struct", "flags"), 8, HEX_FLG); + if(task_cpu(tsp) >= 0){ + print_value(ofp," ", task_cpu(tsp), 2, SIGNED_FLG); + } else { + fprintf(ofp," "); + } + if(task_has_cpu(addr,tsp)){ - print_value(ofp," ", task_cpu(tsp), 2, SIGNED_FLG); + fprintf(ofp,"*"); } else { - fprintf(ofp," -"); + fprintf(ofp," "); } fprintf(ofp, " %s\n", (char *)K_PTR(tsp, "task_struct", "comm")); |