mbox

[PULL,0/8] Linux user for 2.12 patches

Message ID 20180219171037.24539-1-laurent@vivier.eu
State New
Headers show

Pull-request

git://github.com/vivier/qemu.git tags/linux-user-for-2.12-pull-request

Message

Laurent Vivier Feb. 19, 2018, 5:10 p.m. UTC
The following changes since commit f0fa81767555fe2c4b5f8c9e0725a80eac1d7f56:

  cuda.h: Fix multiple typedef (2018-02-16 18:38:21 +0000)

are available in the Git repository at:

  git://github.com/vivier/qemu.git tags/linux-user-for-2.12-pull-request

for you to fetch changes up to f352a021329f73d0219018cdfb39369687e8cadd:

  linux-user: MIPS set cpu to r6 CPU if binary is R6 (2018-02-18 18:52:32 +0100)

----------------------------------------------------------------

----------------------------------------------------------------

Andreas Schwab (1):
  linux-user: Implement ioctl cmd TIOCGPTPEER

Guido Günther (1):
  linux-user: Fix register used for 6th and 7th syscall argument on
    aarch64

Laurent Vivier (2):
  linux-user: Move CPU type name selection to a function
  linux-user, m68k: select CPU according to ELF header values

Peter Maydell (1):
  linux-user: Remove THREAD macro

Samuel Thibault (1):
  linux-user: Fix sched_getaffinity mask size

YunQiang Su (2):
  linux-user: introduce functions to detect CPU type
  linux-user: MIPS set cpu to r6 CPU if binary is R6

 include/elf.h                              | 32 ++++++++++++++++
 linux-user/aarch64/target_elf.h            | 14 +++++++
 linux-user/aarch64/termbits.h              |  2 +
 linux-user/alpha/target_elf.h              | 14 +++++++
 linux-user/alpha/termbits.h                |  1 +
 linux-user/arm/target_elf.h                | 14 +++++++
 linux-user/arm/termbits.h                  |  1 +
 linux-user/cris/target_elf.h               | 14 +++++++
 linux-user/cris/termbits.h                 |  1 +
 linux-user/elfload.c                       | 35 +++++++++++++++++
 linux-user/host/aarch64/safe-syscall.inc.S |  6 +--
 linux-user/hppa/target_elf.h               | 14 +++++++
 linux-user/hppa/termbits.h                 |  2 +
 linux-user/i386/target_elf.h               | 14 +++++++
 linux-user/i386/termbits.h                 |  1 +
 linux-user/ioctls.h                        |  3 ++
 linux-user/m68k/target_elf.h               | 20 ++++++++++
 linux-user/m68k/termbits.h                 |  1 +
 linux-user/main.c                          | 61 ++++++------------------------
 linux-user/microblaze/target_elf.h         | 14 +++++++
 linux-user/microblaze/termbits.h           |  1 +
 linux-user/mips/target_elf.h               | 17 +++++++++
 linux-user/mips/termbits.h                 |  1 +
 linux-user/mips64/target_elf.h             | 17 +++++++++
 linux-user/nios2/target_elf.h              | 14 +++++++
 linux-user/nios2/termbits.h                |  2 +
 linux-user/openrisc/target_elf.h           | 14 +++++++
 linux-user/openrisc/termbits.h             |  2 +
 linux-user/ppc/target_elf.h                | 18 +++++++++
 linux-user/ppc/termbits.h                  |  1 +
 linux-user/qemu.h                          |  5 +--
 linux-user/s390x/target_elf.h              | 14 +++++++
 linux-user/s390x/termbits.h                |  1 +
 linux-user/sh4/target_elf.h                | 14 +++++++
 linux-user/sh4/termbits.h                  |  1 +
 linux-user/sparc/target_elf.h              | 14 +++++++
 linux-user/sparc/termbits.h                |  1 +
 linux-user/sparc64/target_elf.h            | 14 +++++++
 linux-user/sparc64/termbits.h              |  1 +
 linux-user/syscall.c                       | 13 ++++++-
 linux-user/tilegx/target_elf.h             | 14 +++++++
 linux-user/tilegx/termbits.h               |  1 +
 linux-user/unicore32/target_elf.h          | 14 +++++++
 linux-user/x86_64/target_elf.h             | 14 +++++++
 linux-user/x86_64/termbits.h               |  1 +
 45 files changed, 417 insertions(+), 56 deletions(-)
 create mode 100644 linux-user/aarch64/target_elf.h
 create mode 100644 linux-user/alpha/target_elf.h
 create mode 100644 linux-user/arm/target_elf.h
 create mode 100644 linux-user/cris/target_elf.h
 create mode 100644 linux-user/hppa/target_elf.h
 create mode 100644 linux-user/i386/target_elf.h
 create mode 100644 linux-user/m68k/target_elf.h
 create mode 100644 linux-user/microblaze/target_elf.h
 create mode 100644 linux-user/mips/target_elf.h
 create mode 100644 linux-user/mips64/target_elf.h
 create mode 100644 linux-user/nios2/target_elf.h
 create mode 100644 linux-user/openrisc/target_elf.h
 create mode 100644 linux-user/ppc/target_elf.h
 create mode 100644 linux-user/s390x/target_elf.h
 create mode 100644 linux-user/sh4/target_elf.h
 create mode 100644 linux-user/sparc/target_elf.h
 create mode 100644 linux-user/sparc64/target_elf.h
 create mode 100644 linux-user/tilegx/target_elf.h
 create mode 100644 linux-user/unicore32/target_elf.h
 create mode 100644 linux-user/x86_64/target_elf.h

Comments

Peter Maydell Feb. 19, 2018, 7:50 p.m. UTC | #1
On 19 February 2018 at 17:10, Laurent Vivier <laurent@vivier.eu> wrote:
> The following changes since commit f0fa81767555fe2c4b5f8c9e0725a80eac1d7f56:
>
>   cuda.h: Fix multiple typedef (2018-02-16 18:38:21 +0000)
>
> are available in the Git repository at:
>
>   git://github.com/vivier/qemu.git tags/linux-user-for-2.12-pull-request
>
> for you to fetch changes up to f352a021329f73d0219018cdfb39369687e8cadd:
>
>   linux-user: MIPS set cpu to r6 CPU if binary is R6 (2018-02-18 18:52:32 +0100)
>
> ----------------------------------------------------------------
>
> ----------------------------------------------------------------

Hi. This breaks one of my linux-user smoke tests:

/home/petmay01/linaro/qemu-for-merges/build/all-linux-static/sparc32plus-linux-user/qemu-sparc32plus
-L ./gnemul/qemu-sparc sparc/ls -l dummyfile
unable to find CPU model 'Fujitsu MB86904'

This is because the include path for linux-user picks the
guest-architecture subdirectory for the TARGET_ABI_DIR,
which for sparc32plus is "sparc", but the set of CPUs compiled
in depends on the TARGET_ARCH, which is "sparc64", and
sparc64 doesn't include that 32-bit Fujitsu CPU.
The linux-user/sparc/target_elf.h needs to have code to handle
both the pure-32-bit and 32-bit-ABI-on-64-bit-CPU cases,
the same way that linux-user/ppc/target_elf.h does.

thanks
-- PMM
Laurent Vivier Feb. 20, 2018, 9:13 a.m. UTC | #2
Le 19/02/2018 à 20:50, Peter Maydell a écrit :
> On 19 February 2018 at 17:10, Laurent Vivier <laurent@vivier.eu> wrote:
>> The following changes since commit f0fa81767555fe2c4b5f8c9e0725a80eac1d7f56:
>>
>>   cuda.h: Fix multiple typedef (2018-02-16 18:38:21 +0000)
>>
>> are available in the Git repository at:
>>
>>   git://github.com/vivier/qemu.git tags/linux-user-for-2.12-pull-request
>>
>> for you to fetch changes up to f352a021329f73d0219018cdfb39369687e8cadd:
>>
>>   linux-user: MIPS set cpu to r6 CPU if binary is R6 (2018-02-18 18:52:32 +0100)
>>
>> ----------------------------------------------------------------
>>
>> ----------------------------------------------------------------
> 
> Hi. This breaks one of my linux-user smoke tests:
> 
> /home/petmay01/linaro/qemu-for-merges/build/all-linux-static/sparc32plus-linux-user/qemu-sparc32plus
> -L ./gnemul/qemu-sparc sparc/ls -l dummyfile
> unable to find CPU model 'Fujitsu MB86904'
> 
> This is because the include path for linux-user picks the
> guest-architecture subdirectory for the TARGET_ABI_DIR,
> which for sparc32plus is "sparc", but the set of CPUs compiled
> in depends on the TARGET_ARCH, which is "sparc64", and
> sparc64 doesn't include that 32-bit Fujitsu CPU.
> The linux-user/sparc/target_elf.h needs to have code to handle
> both the pure-32-bit and 32-bit-ABI-on-64-bit-CPU cases,
> the same way that linux-user/ppc/target_elf.h does.

Thank you Peter,

I'm going to remove the 4 last patches from the pull request and resend it.

Thanks,
Laurent