[Qemu-devel] [PATCH v4] linux-user: Support f_flags in statfs when available.

Shea Levy posted 1 patch 7 years, 7 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20180301111500.15717-1-shea@shealevy.com
Test checkpatch failed
Test docker-build@min-glib passed
Test docker-mingw@fedora passed
Test docker-quick@centos6 passed
Test ppcbe passed
Test ppcle passed
Test s390x passed
linux-user/syscall.c      |  5 +++++
linux-user/syscall_defs.h | 41 +++++++++++++++++++----------------------
2 files changed, 24 insertions(+), 22 deletions(-)
[Qemu-devel] [PATCH v4] linux-user: Support f_flags in statfs when available.
Posted by Shea Levy 7 years, 7 months ago
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


Re: [Qemu-devel] [PATCH v4] linux-user: Support f_flags in statfs when available.
Posted by Laurent Vivier 7 years, 7 months ago
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>



Re: [Qemu-devel] [PATCH v4] linux-user: Support f_flags in statfs when available.
Posted by no-reply@patchew.org 7 years, 7 months ago
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
Re: [Qemu-devel] [PATCH v4] linux-user: Support f_flags in statfs when available.
Posted by Laurent Vivier 7 years, 7 months ago
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