qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 7fc413: linux-user: Split out do_getdents, do


From: Richard Henderson
Subject: [Qemu-commits] [qemu/qemu] 7fc413: linux-user: Split out do_getdents, do_getdents64
Date: Thu, 11 Nov 2021 06:03:53 -0800

  Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: 7fc413eb728fa0e748595db13a5bfdfa2ef822c3
      
https://github.com/qemu/qemu/commit/7fc413eb728fa0e748595db13a5bfdfa2ef822c3
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-10 (Wed, 10 Nov 2021)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: Split out do_getdents, do_getdents64

Retain all 3 implementations of getdents for now.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed by: Warner Losh <imp@bsdimp.com>
Message-Id: <20211107124845.1174791-2-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>


  Commit: 4d8c4f7cb00bbcaa8c66ab2e93e65064c73af041
      
https://github.com/qemu/qemu/commit/4d8c4f7cb00bbcaa8c66ab2e93e65064c73af041
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-10 (Wed, 10 Nov 2021)

  Changed paths:
    M linux-user/syscall.c
    M linux-user/syscall_defs.h

  Log Message:
  -----------
  linux-user: Always use flexible arrays for dirent d_name

We currently use a flexible array member for target_dirent,
but use incorrectly fixed length arrays for target_dirent64,
linux_dirent and linux_dirent64.

This requires that we adjust the definition of the VFAT READDIR
ioctls which hard-code the 256 namelen size into the ioctl constant.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed by: Warner Losh <imp@bsdimp.com>
Message-Id: <20211107124845.1174791-3-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>


  Commit: 15cb9c84a7b08923ea7fab94bdbe9904d7a7408c
      
https://github.com/qemu/qemu/commit/15cb9c84a7b08923ea7fab94bdbe9904d7a7408c
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-10 (Wed, 10 Nov 2021)

  Changed paths:
    M linux-user/syscall_defs.h

  Log Message:
  -----------
  linux-user: Fix member types of target_dirent64

The host uint64_t (etc) does not have the correct
alignment constraint as the guest: use abi_* types.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed by: Warner Losh <imp@bsdimp.com>
Message-Id: <20211107124845.1174791-4-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>


  Commit: 3c499fa24521527e933e171a9b04a896a1c29cf9
      
https://github.com/qemu/qemu/commit/3c499fa24521527e933e171a9b04a896a1c29cf9
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-10 (Wed, 10 Nov 2021)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: Rewrite do_getdents, do_getdents64

Always allocate host storage; this ensures that the struct
is sufficiently aligned for the host.  Merge the three host
implementations of getdents via a few ifdefs.  Utilize the
same method for do_getdents64.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/704
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20211107124845.1174791-5-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>


  Commit: 8d9a84d41b8cefae003f4cba06acbb01314db531
      
https://github.com/qemu/qemu/commit/8d9a84d41b8cefae003f4cba06acbb01314db531
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-11 (Thu, 11 Nov 2021)

  Changed paths:
    M linux-user/syscall.c
    M linux-user/syscall_defs.h

  Log Message:
  -----------
  Merge tag 'linux-user-for-6.2-pull-request' of git://github.com/vivier/qemu 
into staging

Fix getdents alignment issues (#704)

# gpg: Signature made Thu 11 Nov 2021 12:04:15 PM CET
# gpg:                using RSA key CD2F75DDC8E3A4DC2E4F5173F30C38BD3F2FBE3C
# gpg:                issuer "laurent@vivier.eu"
# gpg: Good signature from "Laurent Vivier <lvivier@redhat.com>" [full]
# gpg:                 aka "Laurent Vivier <laurent@vivier.eu>" [full]
# gpg:                 aka "Laurent Vivier (Red Hat) <lvivier@redhat.com>" 
[full]

* tag 'linux-user-for-6.2-pull-request' of git://github.com/vivier/qemu:
  linux-user: Rewrite do_getdents, do_getdents64
  linux-user: Fix member types of target_dirent64
  linux-user: Always use flexible arrays for dirent d_name
  linux-user: Split out do_getdents, do_getdents64

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


Compare: https://github.com/qemu/qemu/compare/70f872ca916a...8d9a84d41b8c



reply via email to

[Prev in Thread] Current Thread [Next in Thread]