qemu-commits
[Top][All Lists]
Advanced

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

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


From: Richard Henderson
Subject: [Qemu-commits] [qemu/qemu] fd08dd: linux-user: Split out do_getdents, do_getdents64
Date: Mon, 22 Nov 2021 01:38:49 -0800

  Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: fd08ddb9cb050182c0f7c9d74b11038e9c479f4f
      
https://github.com/qemu/qemu/commit/fd08ddb9cb050182c0f7c9d74b11038e9c479f4f
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-21 (Sun, 21 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>
Message-Id: <20211114103539.298686-2-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>


  Commit: 540a736f54a5dffb0851f2adf455f50869b409a1
      
https://github.com/qemu/qemu/commit/540a736f54a5dffb0851f2adf455f50869b409a1
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-21 (Sun, 21 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>
Message-Id: <20211114103539.298686-3-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>


  Commit: 1962cb0029197bc0cd4bb0461171cda677e64966
      
https://github.com/qemu/qemu/commit/1962cb0029197bc0cd4bb0461171cda677e64966
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-21 (Sun, 21 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>
Message-Id: <20211114103539.298686-4-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>


  Commit: aee14c77f42533f2480dfa8552f531efde6c19ee
      
https://github.com/qemu/qemu/commit/aee14c77f42533f2480dfa8552f531efde6c19ee
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-21 (Sun, 21 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>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20211114103539.298686-5-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>


  Commit: 802ae45e94151a6d3ee20eadcb865cf6c875df34
      
https://github.com/qemu/qemu/commit/802ae45e94151a6d3ee20eadcb865cf6c875df34
  Author: Laurent Vivier <laurent@vivier.eu>
  Date:   2021-11-22 (Mon, 22 Nov 2021)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user: fix Coverity CID 1464101

target_mmap() can fail and return -1, but we don't check for that and
instead assume it's always valid.

Fixes: db2af69d6ba8 ("linux-user: Add infrastructure for a signal trampoline 
page")
Cc: richard.henderson@linaro.org
Reported-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20211121151711.331653-1-laurent@vivier.eu>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>


  Commit: 49aaac3548bc5a4632a14de939d5312b28dc1ba2
      
https://github.com/qemu/qemu/commit/49aaac3548bc5a4632a14de939d5312b28dc1ba2
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-22 (Mon, 22 Nov 2021)

  Changed paths:
    M linux-user/elfload.c
    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

linux-user pull request 20211122

Fixes for CID 1464101 and gilab #704

# gpg: Signature made Mon 22 Nov 2021 09:22:37 AM 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: fix Coverity CID 1464101
  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/edf1aa8d44d5...49aaac3548bc



reply via email to

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