• Jens Axboe's avatar
    Change table chaining layout · 18dabf47
    Jens Axboe authored
    Change the page member of the scatterlist structure to be an unsigned
    long, and encode more stuff in the lower bits:
    
    - Bits 0 and 1 zero: this is a normal sg entry. Next sg entry is located
      at sg + 1.
    - Bit 0 set: this is a chain entry, the next real entry is at ->page_link
      with the two low bits masked off.
    - Bit 1 set: this is the final entry in the sg entry. sg_next() will return
      NULL when passed such an entry.
    
    It's thus important that sg table users use the proper accessors to get
    and set the page member.
    Signed-off-by: default avatarJens Axboe <jens.axboe@oracle.com>
    18dabf47
scatterlist.h 280 Bytes