From: Shea Levy <shea@shealevy.com>
To: qemu-devel@nongnu.org
Cc: Laurent Vivier <laurent@vivier.eu>, Shea Levy <shea@shealevy.com>
Subject: [Qemu-devel] [PATCH v4] linux-user: Support f_flags in statfs when available.
Date: Thu, 1 Mar 2018 06:15:00 -0500 [thread overview]
Message-ID: <20180301111500.15717-1-shea@shealevy.com> (raw)
In-Reply-To: <1c105562-7933-d6bf-1071-6836ad8b6e40@vivier.eu>
Signed-off-by: Shea Levy <shea@shealevy.com>
---
linux-user/syscall.c | 5 +++++
linux-user/syscall_defs.h | 41 +++++++++++++++++++----------------------
2 files changed, 24 insertions(+), 22 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 82b35a6bdf..03dca7ea77 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -9534,6 +9534,11 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
__put_user(stfs.f_fsid.__val[1], &target_stfs->f_fsid.val[1]);
__put_user(stfs.f_namelen, &target_stfs->f_namelen);
__put_user(stfs.f_frsize, &target_stfs->f_frsize);
+#ifdef _STATFS_F_FLAGS
+ __put_user(stfs.f_flags, &target_stfs->f_flags);
+#else
+ __put_user(0, &target_stfs->f_flags);
+#endif
memset(target_stfs->f_spare, 0, sizeof(target_stfs->f_spare));
unlock_user_struct(target_stfs, arg2, 1);
}
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index a35c52a60a..ee340b8eac 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -352,19 +352,6 @@ typedef struct {
int val[2];
} kernel_fsid_t;
-struct kernel_statfs {
- int f_type;
- int f_bsize;
- int f_blocks;
- int f_bfree;
- int f_bavail;
- int f_files;
- int f_ffree;
- kernel_fsid_t f_fsid;
- int f_namelen;
- int f_spare[6];
-};
-
struct target_dirent {
abi_long d_ino;
abi_long d_off;
@@ -2223,7 +2210,8 @@ struct target_statfs {
/* Linux specials */
target_fsid_t f_fsid;
int32_t f_namelen;
- int32_t f_spare[6];
+ int32_t f_flags;
+ int32_t f_spare[5];
};
#else
struct target_statfs {
@@ -2239,7 +2227,8 @@ struct target_statfs {
/* Linux specials */
target_fsid_t f_fsid;
abi_long f_namelen;
- abi_long f_spare[6];
+ abi_long f_flags;
+ abi_long f_spare[5];
};
#endif
@@ -2255,7 +2244,8 @@ struct target_statfs64 {
uint64_t f_bavail;
target_fsid_t f_fsid;
uint32_t f_namelen;
- uint32_t f_spare[6];
+ uint32_t f_flags;
+ uint32_t f_spare[5];
};
#elif (defined(TARGET_PPC64) || defined(TARGET_X86_64) || \
defined(TARGET_SPARC64) || defined(TARGET_AARCH64)) && \
@@ -2271,7 +2261,8 @@ struct target_statfs {
target_fsid_t f_fsid;
abi_long f_namelen;
abi_long f_frsize;
- abi_long f_spare[5];
+ abi_long f_flags;
+ abi_long f_spare[4];
};
struct target_statfs64 {
@@ -2285,7 +2276,8 @@ struct target_statfs64 {
target_fsid_t f_fsid;
abi_long f_namelen;
abi_long f_frsize;
- abi_long f_spare[5];
+ abi_long f_flags;
+ abi_long f_spare[4];
};
#elif defined(TARGET_S390X)
struct target_statfs {
@@ -2299,7 +2291,9 @@ struct target_statfs {
kernel_fsid_t f_fsid;
int32_t f_namelen;
int32_t f_frsize;
- int32_t f_spare[5];
+ int32_t f_flags;
+ int32_t f_spare[4];
+
};
struct target_statfs64 {
@@ -2313,7 +2307,8 @@ struct target_statfs64 {
kernel_fsid_t f_fsid;
int32_t f_namelen;
int32_t f_frsize;
- int32_t f_spare[5];
+ int32_t f_flags;
+ int32_t f_spare[4];
};
#else
struct target_statfs {
@@ -2327,7 +2322,8 @@ struct target_statfs {
target_fsid_t f_fsid;
uint32_t f_namelen;
uint32_t f_frsize;
- uint32_t f_spare[5];
+ uint32_t f_flags;
+ uint32_t f_spare[4];
};
struct target_statfs64 {
@@ -2341,7 +2337,8 @@ struct target_statfs64 {
target_fsid_t f_fsid;
uint32_t f_namelen;
uint32_t f_frsize;
- uint32_t f_spare[5];
+ uint32_t f_flags;
+ uint32_t f_spare[4];
};
#endif
--
2.16.1
next prev parent reply other threads:[~2018-03-01 11:15 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-18 19:00 [Qemu-devel] [PATCH] linux-user: Support f_flags in statfs when available Shea Levy
2018-02-19 2:45 ` [Qemu-devel] [PATCH v2] " Shea Levy
2018-02-22 14:25 ` no-reply
2018-02-22 15:18 ` Shea Levy
2018-02-23 2:54 ` Fam Zheng
2018-02-23 4:49 ` no-reply
2018-02-23 4:57 ` [Qemu-devel] [PATCH v3] " Shea Levy
2018-02-23 5:05 ` no-reply
2018-02-25 15:24 ` Laurent Vivier
2018-03-01 11:15 ` Shea Levy [this message]
2018-03-01 11:19 ` [Qemu-devel] [PATCH v4] " Laurent Vivier
2018-03-01 11:25 ` no-reply
2018-03-09 19:56 ` Laurent Vivier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180301111500.15717-1-shea@shealevy.com \
--to=shea@shealevy.com \
--cc=laurent@vivier.eu \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).