1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- #ifndef __XFS_BUF_ITEM_H__
- #define __XFS_BUF_ITEM_H__
- #define XFS_BLI_HOLD 0x01
- #define XFS_BLI_DIRTY 0x02
- #define XFS_BLI_STALE 0x04
- #define XFS_BLI_LOGGED 0x08
- #define XFS_BLI_INODE_ALLOC_BUF 0x10
- #define XFS_BLI_STALE_INODE 0x20
- #define XFS_BLI_INODE_BUF 0x40
- #define XFS_BLI_ORDERED 0x80
- #define XFS_BLI_FLAGS \
- { XFS_BLI_HOLD, "HOLD" }, \
- { XFS_BLI_DIRTY, "DIRTY" }, \
- { XFS_BLI_STALE, "STALE" }, \
- { XFS_BLI_LOGGED, "LOGGED" }, \
- { XFS_BLI_INODE_ALLOC_BUF, "INODE_ALLOC" }, \
- { XFS_BLI_STALE_INODE, "STALE_INODE" }, \
- { XFS_BLI_INODE_BUF, "INODE_BUF" }, \
- { XFS_BLI_ORDERED, "ORDERED" }
- struct xfs_buf;
- struct xfs_mount;
- struct xfs_buf_log_item;
- typedef struct xfs_buf_log_item {
- xfs_log_item_t bli_item;
- struct xfs_buf *bli_buf;
- unsigned int bli_flags;
- unsigned int bli_recur;
- atomic_t bli_refcount;
- int bli_format_count;
- struct xfs_buf_log_format *bli_formats;
- struct xfs_buf_log_format __bli_format;
- } xfs_buf_log_item_t;
- int xfs_buf_item_init(struct xfs_buf *, struct xfs_mount *);
- void xfs_buf_item_relse(struct xfs_buf *);
- void xfs_buf_item_log(xfs_buf_log_item_t *, uint, uint);
- bool xfs_buf_item_dirty_format(struct xfs_buf_log_item *);
- void xfs_buf_attach_iodone(struct xfs_buf *,
- void(*)(struct xfs_buf *, xfs_log_item_t *),
- xfs_log_item_t *);
- void xfs_buf_iodone_callbacks(struct xfs_buf *);
- void xfs_buf_iodone(struct xfs_buf *, struct xfs_log_item *);
- bool xfs_buf_resubmit_failed_buffers(struct xfs_buf *,
- struct xfs_log_item *,
- struct list_head *);
- extern kmem_zone_t *xfs_buf_item_zone;
- #endif /* __XFS_BUF_ITEM_H__ */
|