• David Howells's avatar
    SLOW_WORK: Allow the work items to be viewed through a /proc file · 8fba10a4
    David Howells authored
    Allow the executing and queued work items to be viewed through a /proc file
    for debugging purposes.  The contents look something like the following:
    
        THR PID   ITEM ADDR        FL MARK  DESC
        === ===== ================ == ===== ==========
          0  3005 ffff880023f52348  a 952ms FSC: OBJ17d3: LOOK
          1  3006 ffff880024e33668  2 160ms FSC: OBJ17e5 OP60d3b: Write1/Store fl=2
          2  3165 ffff8800296dd180  a 424ms FSC: OBJ17e4: LOOK
          3  4089 ffff8800262c8d78  a 212ms FSC: OBJ17ea: CRTN
          4  4090 ffff88002792bed8  2 388ms FSC: OBJ17e8 OP60d36: Write1/Store fl=2
          5  4092 ffff88002a0ef308  2 388ms FSC: OBJ17e7 OP60d2e: Write1/Store fl=2
          6  4094 ffff88002abaf4b8  2 132ms FSC: OBJ17e2 OP60d4e: Write1/Store fl=2
          7  4095 ffff88002bb188e0  a 388ms FSC: OBJ17e9: CRTN
        vsq     - ffff880023d99668  1 308ms FSC: OBJ17e0 OP60f91: Write1/EnQ fl=2
        vsq     - ffff8800295d1740  1 212ms FSC: OBJ16be OP4d4b6: Write1/EnQ fl=2
        vsq     - ffff880025ba3308  1 160ms FSC: OBJ179a OP58dec: Write1/EnQ fl=2
        vsq     - ffff880024ec83e0  1 160ms FSC: OBJ17ae OP599f2: Write1/EnQ fl=2
        vsq     - ffff880026618e00  1 160ms FSC: OBJ17e6 OP60d33: Write1/EnQ fl=2
        vsq     - ffff880025a2a4b8  1 132ms FSC: OBJ16a2 OP4d583: Write1/EnQ fl=2
        vsq     - ffff880023cbe6d8  9 212ms FSC: OBJ17eb: LOOK
        vsq     - ffff880024d37590  9 212ms FSC: OBJ17ec: LOOK
        vsq     - ffff880027746cb0  9 212ms FSC: OBJ17ed: LOOK
        vsq     - ffff880024d37ae8  9 212ms FSC: OBJ17ee: LOOK
        vsq     - ffff880024d37cb0  9 212ms FSC: OBJ17ef: LOOK
        vsq     - ffff880025036550  9 212ms FSC: OBJ17f0: LOOK
        vsq     - ffff8800250368e0  9 212ms FSC: OBJ17f1: LOOK
        vsq     - ffff880025036aa8  9 212ms FSC: OBJ17f2: LOOK
    
    In the 'THR' column, executing items show the thread they're occupying and
    queued threads indicate which queue they're on.  'PID' shows the process ID of
    a slow-work thread that's executing something.  'FL' shows the work item flags.
    'MARK' indicates how long since an item was queued or began executing.  Lastly,
    the 'DESC' column permits the owner of an item to give some information.
    Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
    8fba10a4
slow-work.c 27.6 KB