|
#define | XFS_BUF_DADDR_NULL ((xfs_daddr_t) (-1LL)) |
|
#define | XBF_READ (1 << 0) /* buffer intended for reading from device */ |
|
#define | XBF_WRITE (1 << 1) /* buffer intended for writing to device */ |
|
#define | XBF_READ_AHEAD (1 << 2) /* asynchronous read-ahead */ |
|
#define | XBF_ASYNC (1 << 4) /* initiator will not wait for completion */ |
|
#define | XBF_DONE (1 << 5) /* all pages in the buffer uptodate */ |
|
#define | XBF_STALE (1 << 6) /* buffer has been staled, do not find it */ |
|
#define | XBF_SYNCIO (1 << 10)/* treat this buffer as synchronous I/O */ |
|
#define | XBF_FUA (1 << 11)/* force cache write through mode */ |
|
#define | XBF_FLUSH (1 << 12)/* flush the disk cache before a write */ |
|
#define | XBF_TRYLOCK (1 << 16)/* lock requested, but do not wait */ |
|
#define | XBF_UNMAPPED (1 << 17)/* do not map the buffer */ |
|
#define | _XBF_PAGES (1 << 20)/* backed by refcounted pages */ |
|
#define | _XBF_KMEM (1 << 21)/* backed by heap memory */ |
|
#define | _XBF_DELWRI_Q (1 << 22)/* buffer on a delwri queue */ |
|
#define | _XBF_COMPOUND (1 << 23)/* compound buffer */ |
|
#define | _XBF_LRU_DISPOSE (1 << 24)/* buffer being discarded */ |
|
#define | XFS_BUF_FLAGS |
|
#define | XB_PAGES 2 |
|
#define | DEFINE_SINGLE_BUF_MAP(map, blkno, numblk) struct xfs_buf_map (map) = { .bm_bn = (blkno), .bm_len = (numblk) }; |
|
#define | xfs_buf_islocked(bp) ((bp)->b_sema.count <= 0) |
|
#define | xfs_buf_zero(bp, off, len) xfs_buf_iomove((bp), (off), (len), NULL, XBRW_ZERO) |
|
#define | XFS_BUF_ZEROFLAGS(bp) |
|
#define | XFS_BUF_UNSTALE(bp) ((bp)->b_flags &= ~XBF_STALE) |
|
#define | XFS_BUF_ISSTALE(bp) ((bp)->b_flags & XBF_STALE) |
|
#define | XFS_BUF_DONE(bp) ((bp)->b_flags |= XBF_DONE) |
|
#define | XFS_BUF_UNDONE(bp) ((bp)->b_flags &= ~XBF_DONE) |
|
#define | XFS_BUF_ISDONE(bp) ((bp)->b_flags & XBF_DONE) |
|
#define | XFS_BUF_ASYNC(bp) ((bp)->b_flags |= XBF_ASYNC) |
|
#define | XFS_BUF_UNASYNC(bp) ((bp)->b_flags &= ~XBF_ASYNC) |
|
#define | XFS_BUF_ISASYNC(bp) ((bp)->b_flags & XBF_ASYNC) |
|
#define | XFS_BUF_READ(bp) ((bp)->b_flags |= XBF_READ) |
|
#define | XFS_BUF_UNREAD(bp) ((bp)->b_flags &= ~XBF_READ) |
|
#define | XFS_BUF_ISREAD(bp) ((bp)->b_flags & XBF_READ) |
|
#define | XFS_BUF_WRITE(bp) ((bp)->b_flags |= XBF_WRITE) |
|
#define | XFS_BUF_UNWRITE(bp) ((bp)->b_flags &= ~XBF_WRITE) |
|
#define | XFS_BUF_ISWRITE(bp) ((bp)->b_flags & XBF_WRITE) |
|
#define | XFS_BUF_ADDR(bp) ((bp)->b_map.bm_bn) |
|
#define | XFS_BUF_SET_ADDR(bp, bno) ((bp)->b_map.bm_bn = (xfs_daddr_t)(bno)) |
|
#define | xfs_getsize_buftarg(buftarg) block_size((buftarg)->bt_bdev) |
|
#define | xfs_readonly_buftarg(buftarg) bdev_read_only((buftarg)->bt_bdev) |
|
|
struct xfs_buf * | _xfs_buf_find (struct xfs_buftarg *target, struct xfs_buf_map *map, int nmaps, xfs_buf_flags_t flags, struct xfs_buf *new_bp) |
|
struct xfs_buf * | _xfs_buf_alloc (struct xfs_buftarg *target, struct xfs_buf_map *map, int nmaps, xfs_buf_flags_t flags) |
|
struct xfs_buf * | xfs_buf_get_map (struct xfs_buftarg *target, struct xfs_buf_map *map, int nmaps, xfs_buf_flags_t flags) |
|
struct xfs_buf * | xfs_buf_read_map (struct xfs_buftarg *target, struct xfs_buf_map *map, int nmaps, xfs_buf_flags_t flags) |
|
void | xfs_buf_readahead_map (struct xfs_buftarg *target, struct xfs_buf_map *map, int nmaps) |
|
struct xfs_buf * | xfs_buf_get_empty (struct xfs_buftarg *target, size_t numblks) |
|
void | xfs_buf_set_empty (struct xfs_buf *bp, size_t numblks) |
|
int | xfs_buf_associate_memory (struct xfs_buf *bp, void *mem, size_t length) |
|
struct xfs_buf * | xfs_buf_get_uncached (struct xfs_buftarg *target, size_t numblks, int flags) |
|
struct xfs_buf * | xfs_buf_read_uncached (struct xfs_buftarg *target, xfs_daddr_t daddr, size_t numblks, int flags) |
|
void | xfs_buf_hold (struct xfs_buf *bp) |
|
void | xfs_buf_free (xfs_buf_t *) |
|
void | xfs_buf_rele (xfs_buf_t *) |
|
int | xfs_buf_trylock (xfs_buf_t *) |
|
void | xfs_buf_lock (xfs_buf_t *) |
|
void | xfs_buf_unlock (xfs_buf_t *) |
|
int | xfs_bwrite (struct xfs_buf *bp) |
|
void | xfsbdstrat (struct xfs_mount *, struct xfs_buf *) |
|
void | xfs_buf_ioend (xfs_buf_t *, int) |
|
void | xfs_buf_ioerror (xfs_buf_t *, int) |
|
void | xfs_buf_ioerror_alert (struct xfs_buf *, const char *func) |
|
void | xfs_buf_iorequest (xfs_buf_t *) |
|
int | xfs_buf_iowait (xfs_buf_t *) |
|
void | xfs_buf_iomove (xfs_buf_t *, size_t, size_t, void *, xfs_buf_rw_t) |
|
xfs_caddr_t | xfs_buf_offset (xfs_buf_t *, size_t) |
|
bool | xfs_buf_delwri_queue (struct xfs_buf *, struct list_head *) |
|
int | xfs_buf_delwri_submit (struct list_head *) |
|
int | xfs_buf_delwri_submit_nowait (struct list_head *) |
|
int | xfs_buf_init (void) |
|
void | xfs_buf_terminate (void) |
|
void | xfs_buf_stale (struct xfs_buf *bp) |
|
xfs_buftarg_t * | xfs_alloc_buftarg (struct xfs_mount *, struct block_device *, int, const char *) |
|
void | xfs_free_buftarg (struct xfs_mount *, struct xfs_buftarg *) |
|
void | xfs_wait_buftarg (xfs_buftarg_t *) |
|
int | xfs_setsize_buftarg (xfs_buftarg_t *, unsigned int, unsigned int) |
|