• Jens Axboe's avatar
    [PATCH] request references and list deletion/insertion checking · 6f04a530
    Jens Axboe authored
    o Always use list_del_init() on request queuelist, this allows us to
      sanity check the integrity of the request on insertion and removal.
      So we can complain loudly instead of silently corrupting memory.
    
    o Add references to requests. This is cheap, since we dont have to use
      an atomic variable for it (all puts are inside queue lock). We've had
      a bug in IDE for years where we want to inspect request state after
      io completion, but this is not possible to do race free right now.
      REQ_BLOCK_PC and sgio will need this too, for checking io residual
      etc. This is not just a theoretical race, I've seen it happen.
    6f04a530
ll_rw_blk.c 56.3 KB