qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] aa07f5: linux-user: Add /proc/self/exe open f


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] aa07f5: linux-user: Add /proc/self/exe open forwarding
Date: Tue, 06 May 2014 04:00:05 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: aa07f5ecf9828bb2ff8d796cb0b17ad8534201c7
      
https://github.com/qemu/qemu/commit/aa07f5ecf9828bb2ff8d796cb0b17ad8534201c7
  Author: Maxim Ostapenko <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: Add /proc/self/exe open forwarding

QEMU already supports /proc/self/{maps,stat,auxv} so addition of
/proc/self/exe is rather trivial.

Fixes https://bugs.launchpad.net/qemu/+bug/1299190

Signed-off-by: Maxim Ostapenko <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>


  Commit: 8c0f0a60d48a6f62c20f4ce77dceb82047d3d57f
      
https://github.com/qemu/qemu/commit/8c0f0a60d48a6f62c20f4ce77dceb82047d3d57f
  Author: James Hogan <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user: Assert stack used for auxvec, envp, argv

Assert that the amount of stack space used for auxvec, envp & argv
exactly matches the amount allocated. This catches if DLINFO_ITEMS isn't
updated when another NEW_AUX_ENT is added.

Signed-off-by: James Hogan <address@hidden>
Cc: Riku Voipio <address@hidden>
Cc: Peter Maydell <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>


  Commit: 52b6549442988e0a0819b6b7fb36ded164952a34
      
https://github.com/qemu/qemu/commit/52b6549442988e0a0819b6b7fb36ded164952a34
  Author: Huw Davies <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: Move if-elses to a switch statement.

This makes adding more message types cleaner.

Signed-off-by: Huw Davies <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>


  Commit: 4bc2975698773afdca2f79ebcff9f3b588f646fc
      
https://github.com/qemu/qemu/commit/4bc2975698773afdca2f79ebcff9f3b588f646fc
  Author: Huw Davies <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: Add support for SCM_CREDENTIALS.

Signed-off-by: Huw Davies <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>


  Commit: a29e5ba21f3dc01cd7f12aac9216e06e7bdd0e9e
      
https://github.com/qemu/qemu/commit/a29e5ba21f3dc01cd7f12aac9216e06e7bdd0e9e
  Author: James Hogan <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: Handle arches with llseek instead of _llseek

Recently merged kernel ports (such as OpenRISC and Meta) have an llseek
system call instead of _llseek. This is handled for the host
architecture by defining __NR__llseek as __NR_llseek, but not for the
target architecture.

Handle it in the same way for these architectures, defining
TARGET_NR__llseek as TARGET_NR_llseek.

Signed-off-by: James Hogan <address@hidden>
Cc: Riku Voipio <address@hidden>
Cc: Jia Liu <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>


  Commit: 34d6086236baeb59f4b46e2380f2b271acd6f6cf
      
https://github.com/qemu/qemu/commit/34d6086236baeb59f4b46e2380f2b271acd6f6cf
  Author: Natanael Copa <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

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

  Log Message:
  -----------
  linux-user: avoid using glibc internals in _syscall5 and in definition of 
target_sigevent struct

Use the public sigset_t instead of the glibc specific internal
__sigset_t in _syscall.

Calculate the sigevent pad size is calculated in similar way as kernel
does it instead of using glibc internal field _pad.

This is needed for building with musl libc.

Signed-off-by: Natanael Copa <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>
Reviewed-by: Peter Maydell <address@hidden>


  Commit: 7af03928b1194befa1ad12e25b0e53e6770ba18c
      
https://github.com/qemu/qemu/commit/7af03928b1194befa1ad12e25b0e53e6770ba18c
  Author: Peter Maydell <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M linux-user/signal.c

  Log Message:
  -----------
  linux-user/signal.c: Set fault address in AArch64 signal info

Set the fault address correctly in the signal information passed
to a signal handler for AArch64 guests.

Signed-off-by: Peter Maydell <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>


  Commit: 18cb008865d078c30f8efcd28c774788ae13d6a3
      
https://github.com/qemu/qemu/commit/18cb008865d078c30f8efcd28c774788ae13d6a3
  Author: Riku Voipio <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M linux-user/Makefile.objs
    R linux-user/cpu-uname.c
    R linux-user/cpu-uname.h
    M linux-user/syscall.c
    A linux-user/uname.c
    A linux-user/uname.h

  Log Message:
  -----------
  linux-user: rename cpu-uname -> uname

To move more uname related functions out of syscall.c,
rename cpu-uname.{c,h} to uname.{c.h}

Signed-off-by: Riku Voipio <address@hidden>


  Commit: 6d30db19caab3cc71a9353cab772b258f0545503
      
https://github.com/qemu/qemu/commit/6d30db19caab3cc71a9353cab772b258f0545503
  Author: Riku Voipio <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

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

  Log Message:
  -----------
  linux-user: move uname functions to uname.c

Make syscall.c slightly smaller by moving uname-related
functions to uname.c.

Signed-off-by: Riku Voipio <address@hidden>


  Commit: e586822a58b6609edb5ea929e8a4aa394d32389f
      
https://github.com/qemu/qemu/commit/e586822a58b6609edb5ea929e8a4aa394d32389f
  Author: Riku Voipio <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M configure
    M linux-user/main.c
    M linux-user/uname.c

  Log Message:
  -----------
  linux-user: remove configure option for setting uname release

--enable-uname-release was a rather heavyweight hammer, as it allows
providing values less that UNAME_MINIMUM_RELEASE. Also, it affects
all built linux-user targets, which in most cases is not what user
wants.

Now that we have UNAME_MINIMUM_RELEASE for all linux-user platforms,
we can drop --enable-uname-release and the related CONFIG_UNAME_RELEASE
define.

Users can still override the variable with QEMU_UNAME=2.6.32 or -r
command line option. If distributors need to update a minimum version
for a specific target, it can be done by updating UNAME_MINIMUM_RELEASE.

Signed-off-by: Riku Voipio <address@hidden>


  Commit: 43ce393ee5f7b96d2ac22fedc40d6b6fb3f65a3e
      
https://github.com/qemu/qemu/commit/43ce393ee5f7b96d2ac22fedc40d6b6fb3f65a3e
  Author: Peter Maydell <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user/elfload.c: Fix incorrect ARM HWCAP bits

The ELF HWCAP bits for ARM features THUMBEE, NEON, VFPv3 and VFPv3D16 are
all off by one compared to the kernel definitions. Fix this discrepancy
and add in the missing CRUNCH bit which was the cause of the off-by-one
error. (We don't emulate any of the CPUs which have that weird hardware,
so it's otherwise uninteresting to us.)

Cc: address@hidden
Signed-off-by: Peter Maydell <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>


  Commit: 24682654654a2e7b50afc27880f4098e5fca3742
      
https://github.com/qemu/qemu/commit/24682654654a2e7b50afc27880f4098e5fca3742
  Author: Peter Maydell <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user/elfload.c: Update ARM HWCAP bits

The kernel has added support for a number of new ARM HWCAP bits;
add them to QEMU, including support for setting them where we have
a corresponding CPU feature bit.

We were also incorrectly setting the VFPv3D16 HWCAP -- this means
"only 16 D registers", not "supports 16-bit floating point format";
since QEMU always has 32 D registers for VFPv3, we can just remove
the line that incorrectly set this bit.

The kernel does not set the HWCAP_FPA even if it is providing FPA
emulation via nwfpe, so don't set this bit in QEMU either.

Signed-off-by: Peter Maydell <address@hidden>
Cc: address@hidden
Signed-off-by: Riku Voipio <address@hidden>


  Commit: 24e76ff06bcd0936ee8b04b15dca42efb7d614d1
      
https://github.com/qemu/qemu/commit/24e76ff06bcd0936ee8b04b15dca42efb7d614d1
  Author: Peter Maydell <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user/elfload.c: Fix A64 code which was incorrectly acting like A32

The ARM target-specific code in elfload.c was incorrectly allowing
the 64-bit ARM target to use most of the existing 32-bit definitions:
most noticably this meant that our HWCAP bits passed to the guest
were wrong, and register handling when dumping core was totally
broken. Fix this by properly separating the 64 and 32 bit code,
since they have more differences than similarities.

Signed-off-by: Peter Maydell <address@hidden>
Cc: address@hidden
Signed-off-by: Riku Voipio <address@hidden>


  Commit: ad6919dc0ab3b8ae26d772e883aa8e709785d249
      
https://github.com/qemu/qemu/commit/ad6919dc0ab3b8ae26d772e883aa8e709785d249
  Author: Peter Maydell <address@hidden>
  Date:   2014-05-02 (Fri, 02 May 2014)

  Changed paths:
    M include/elf.h
    M linux-user/elfload.c

  Log Message:
  -----------
  linux-user/elfload.c: Support ARM HWCAP2 flags

The ARM kernel has chosen to spill into the HWCAP2 ELF feature bit flags
early, even though it hasn't yet exhausted all 32 bits of the HWCAP word.
Add support for setting this in the same way we do for HWCAP.

Signed-off-by: Peter Maydell <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>


  Commit: a39fb273bddd315b440b0617783051456a148242
      
https://github.com/qemu/qemu/commit/a39fb273bddd315b440b0617783051456a148242
  Author: Petar Jovanovic <address@hidden>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M linux-user/syscall.c

  Log Message:
  -----------
  linux-user: fix getrusage and wait4 failures with invalid rusage struct

Implementations of system calls getrusage and wait4 have not previously
handled correctly cases when incorrect address of struct rusage is
passed.
This change makes sure return values are correctly set for these cases.

Signed-off-by: Petar Jovanovic <address@hidden>
Signed-off-by: Riku Voipio <address@hidden>


  Commit: cf972928fc1f8d5f6ecaacf5ef354cbe52d79a90
      
https://github.com/qemu/qemu/commit/cf972928fc1f8d5f6ecaacf5ef354cbe52d79a90
  Author: Peter Maydell <address@hidden>
  Date:   2014-05-06 (Tue, 06 May 2014)

  Changed paths:
    M configure
    M include/elf.h
    M linux-user/Makefile.objs
    R linux-user/cpu-uname.c
    R linux-user/cpu-uname.h
    M linux-user/elfload.c
    M linux-user/main.c
    M linux-user/signal.c
    M linux-user/syscall.c
    M linux-user/syscall_defs.h
    A linux-user/uname.c
    A linux-user/uname.h

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/riku/linux-user-for-upstream' into 
staging

* remotes/riku/linux-user-for-upstream:
  linux-user: fix getrusage and wait4 failures with invalid rusage struct
  linux-user/elfload.c: Support ARM HWCAP2 flags
  linux-user/elfload.c: Fix A64 code which was incorrectly acting like A32
  linux-user/elfload.c: Update ARM HWCAP bits
  linux-user/elfload.c: Fix incorrect ARM HWCAP bits
  linux-user: remove configure option for setting uname release
  linux-user: move uname functions to uname.c
  linux-user: rename cpu-uname -> uname
  linux-user/signal.c: Set fault address in AArch64 signal info
  linux-user: avoid using glibc internals in _syscall5 and in definition of 
target_sigevent struct
  linux-user: Handle arches with llseek instead of _llseek
  linux-user: Add support for SCM_CREDENTIALS.
  linux-user: Move if-elses to a switch statement.
  linux-user: Assert stack used for auxvec, envp, argv
  linux-user: Add /proc/self/exe open forwarding

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/fdaad4715ae9...cf972928fc1f

reply via email to

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