linux-user/syscall.c | 5 +++++ linux-user/syscall_defs.h | 41 +++++++++++++++++++---------------------- 2 files changed, 24 insertions(+), 22 deletions(-)
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
Le 01/03/2018 à 12:15, Shea Levy a écrit : > 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(-) > Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Hi, This series seems to have some coding style problems. See output below for more information: Type: series Message-id: 20180301111500.15717-1-shea@shealevy.com Subject: [Qemu-devel] [PATCH v4] linux-user: Support f_flags in statfs when available. === TEST SCRIPT BEGIN === #!/bin/bash BASE=base n=1 total=$(git log --oneline $BASE.. | wc -l) failed=0 git config --local diff.renamelimit 0 git config --local diff.renames True git config --local diff.algorithm histogram commits="$(git log --format=%H --reverse $BASE..)" for c in $commits; do echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..." if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then failed=1 echo fi n=$((n+1)) done exit $failed === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 From https://github.com/patchew-project/qemu * [new tag] patchew/20180301111500.15717-1-shea@shealevy.com -> patchew/20180301111500.15717-1-shea@shealevy.com Switched to a new branch 'test' 86c0c495f9 linux-user: Support f_flags in statfs when available. === OUTPUT BEGIN === Checking PATCH 1/1: linux-user: Support f_flags in statfs when available.... ERROR: code indent should never use tabs #55: FILE: linux-user/syscall_defs.h:2213: +^Iint32_t^I^I^If_flags;$ ERROR: code indent should never use tabs #56: FILE: linux-user/syscall_defs.h:2214: +^Iint32_t^I^I^If_spare[5];$ ERROR: code indent should never use tabs #65: FILE: linux-user/syscall_defs.h:2230: +^Iabi_long^I^If_flags;$ ERROR: code indent should never use tabs #66: FILE: linux-user/syscall_defs.h:2231: +^Iabi_long^I^If_spare[5];$ ERROR: code indent should never use tabs #75: FILE: linux-user/syscall_defs.h:2247: +^Iuint32_t^If_flags;$ ERROR: code indent should never use tabs #76: FILE: linux-user/syscall_defs.h:2248: +^Iuint32_t^If_spare[5];$ ERROR: code indent should never use tabs #85: FILE: linux-user/syscall_defs.h:2264: +^Iabi_long f_flags;$ ERROR: code indent should never use tabs #86: FILE: linux-user/syscall_defs.h:2265: +^Iabi_long f_spare[4];$ ERROR: code indent should never use tabs #95: FILE: linux-user/syscall_defs.h:2279: +^Iabi_long f_flags;$ ERROR: code indent should never use tabs #96: FILE: linux-user/syscall_defs.h:2280: +^Iabi_long f_spare[4];$ ERROR: code indent should never use tabs #126: FILE: linux-user/syscall_defs.h:2325: +^Iuint32_t f_flags;$ ERROR: code indent should never use tabs #127: FILE: linux-user/syscall_defs.h:2326: +^Iuint32_t f_spare[4];$ ERROR: code indent should never use tabs #136: FILE: linux-user/syscall_defs.h:2340: +^Iuint32_t f_flags;$ ERROR: code indent should never use tabs #137: FILE: linux-user/syscall_defs.h:2341: +^Iuint32_t f_spare[4];$ total: 14 errors, 0 warnings, 112 lines checked Your patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. === OUTPUT END === Test command exited with code: 1 --- Email generated automatically by Patchew [http://patchew.org/]. Please send your feedback to patchew-devel@freelists.org
Le 01/03/2018 à 12:15, Shea Levy a écrit : > 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(-) Applied to my 'linux-user-for-2.12' branch. Thanks, Laurent
© 2016 - 2025 Red Hat, Inc.