[Crash-utility] [PATCH] display ST when using ps -l

Dave Anderson anderson at redhat.com
Thu Mar 8 14:28:18 UTC 2012



----- Original Message -----
> At 2012-3-7 23:36, Dave Anderson wrote:
> >
> >
> > ----- Original Message -----
> >> Hello Dave,
> >>
> >> I was recommended to add the display of ST when using ps -l.  Because it
> >> is simple, so I made the patch at first and then talk about the merit of
> >> patch with you.
> >>
> >> The display is like below:
> >>
> >> crash>  ps -l
> >> [100126284069406]  PID: 2389   TASK: ffff88047416aa80  ST:IN  CPU: 12  COMMAND: "kondemand/12"
> >> [100126285814043]  PID: 795    TASK: ffff880470cb3540  ST:UN  CPU: 0   COMMAND: "jbd2/sda2-8"
> >> [100126284061076]  PID: 2377   TASK: ffff88047426c100  ST:IN  CPU: 0   COMMAND: "kondemand/0"
> >> [100126284058337]  PID: 70050  TASK: ffff88045beaeac0  ST:RU  CPU: 3   COMMAND: "crash"
> >> [100126285834369]  PID: 70781  TASK: ffff88046929e100  ST:RU  CPU: 0   COMMAND: "dd"
> >> ...
> >>
> >> I think "ps -l", which displays task sorted by last_run/timestamp, is
> >> concerning about the state of the task. Taking it into consideration, on
> >> a live system with original code, we use "ps -l" to show the sorted
> >> tasks at first, then use "ps" to display the state. The two pieces of
> >> information in such situation are not consonant. This is the reason why
> >> ST is needed.
> >
> > Your patch is unacceptable as-is because it changes the task header display
> > for *all* context-specific commands, like "bt", "vm", "files", "task", etc.
> >
> > But it does make sense that the task's timestamp and its state could
> > be correlated by "ps -l" output.  Maybe something like this, with an
> > explanation in the ps help page?:
> >
> >    crash>  ps -l
> >    [100126284069406] [IN]  PID: 2389   TASK: ffff88047416aa80  CPU: 12  COMMAND: "kondemand/12"
> >    [100126285814043] [UN]  PID: 795    TASK: ffff880470cb3540  CPU:  0   COMMAND: "jbd2/sda2-8"
> >    [100126284061076] [IN]  PID: 2377   TASK: ffff88047426c100  CPU:  0   COMMAND: "kondemand/0"
> >    [100126284058337] [RU]  PID: 70050  TASK: ffff88045beaeac0  CPU:  3   COMMAND: "crash"
> >    [100126285834369] [RU]  PID: 70781  TASK: ffff88046929e100  CPU:  0   COMMAND: "dd"
> >    ...
> 
> String like "PID: 2389   TASK: ffff88047416aa80  CPU: 12  COMMAND: "kondemand/12"" 
> is printed by a function. The change of the function, which I made in the last patch,
> causes the change of other commands.  The new patch will add "ST:.." out of the command,
> the output is like below:
> 
> [2567398667393]  ST:IN  PID: 154    TASK: ffff880475292b40  CPU: 0  COMMAND: "kblockd/0"
> [2567399925204]  ST:IN  PID: 4380   TASK: ffff880464665500  CPU: 1  COMMAND: "qemu-system-x86"
> [2567396569308]  ST:IN  PID: 4411   TASK: ffff880467227500  CPU: 1  COMMAND: "qemu-system-x86"
> [2567395016839]  ST:RU  PID: 5338   TASK: ffff880464664ac0  CPU: 2  COMMAND: "crash"

This is OK, but aesthetically I prefer to bracket the status identifier
the same way as is done by the last_run/timestamp value.  Queued for
crash-6.0.5.

Dave




More information about the Crash-utility mailing list