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 - 2026 Red Hat, Inc.