9pfs: local : Introduce local_fid_fd() helper Factor out duplicated code to a single helper. More users to come. Signed-off-by: Greg Kurz <groug@kaod.org> Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com> Message-Id: <20250312152933.383967-2-groug@kaod.org> Signed-off-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
diff --git a/hw/9pfs/9p-local.c b/hw/9pfs/9p-local.c index 928523a..99b9560 100644 --- a/hw/9pfs/9p-local.c +++ b/hw/9pfs/9p-local.c
@@ -766,16 +766,19 @@ return err; } +static int local_fid_fd(int fid_type, V9fsFidOpenState *fs) +{ + if (fid_type == P9_FID_DIR) { + return dirfd(fs->dir.stream); + } else { + return fs->fd; + } +} + static int local_fstat(FsContext *fs_ctx, int fid_type, V9fsFidOpenState *fs, struct stat *stbuf) { - int err, fd; - - if (fid_type == P9_FID_DIR) { - fd = dirfd(fs->dir.stream); - } else { - fd = fs->fd; - } + int err, fd = local_fid_fd(fid_type, fs); err = fstat(fd, stbuf); if (err) { @@ -1167,13 +1170,7 @@ static int local_fsync(FsContext *ctx, int fid_type, V9fsFidOpenState *fs, int datasync) { - int fd; - - if (fid_type == P9_FID_DIR) { - fd = dirfd(fs->dir.stream); - } else { - fd = fs->fd; - } + int fd = local_fid_fd(fid_type, fs); if (datasync) { return qemu_fdatasync(fd);