search for: di_format

Displaying 2 results from an estimated 2 matches for "di_format".

2015 Dec 15
8
[PATCH] xfs: Add support for v3 directories
...changed, 399 insertions(+), 230 deletions(-) diff --git a/core/fs/xfs/xfs.c b/core/fs/xfs/xfs.c index 8dbc803..6f45973 100644 --- a/core/fs/xfs/xfs.c +++ b/core/fs/xfs/xfs.c @@ -74,10 +74,13 @@ static int xfs_readdir(struct file *file, struct dirent *dirent) return -1; } - if (core->di_format == XFS_DINODE_FMT_LOCAL) + switch (core->di_format) { + case XFS_DINODE_FMT_LOCAL: return xfs_fmt_local_readdir(file, dirent, core); - else if (core->di_format == XFS_DINODE_FMT_EXTENTS) + case XFS_DINODE_FMT_EXTENTS: + case XFS_DINODE_FMT_BTREE: return xfs_fmt_extents_read...
2012 Sep 03
1
[GIT-PULL] XFS filesystem driver
...= file->fs; + xfs_dinode_t *core; + struct inode *inode = file->inode; + int retval = -1; + + core = xfs_dinode_get_core(fs, inode->ino); + if (!core) { + xfs_error("Failed to get dinode from disk (ino %llx)", inode->ino); + return -1; + } + + if (core->di_format == XFS_DINODE_FMT_LOCAL) + retval = xfs_fmt_local_readdir(file, dirent, core); + else if (core->di_format == XFS_DINODE_FMT_EXTENTS) + retval = xfs_fmt_extents_readdir(file, dirent, core); + + return retval; +} + +static uint32_t xfs_getfssec(struct file *file, char *buf, int sectors, +...