qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] b89485: update Linux headers to 4.6


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] b89485: update Linux headers to 4.6
Date: Tue, 05 Apr 2016 04:00:07 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: b89485a52e38dcdacffa311706734ee82a97fab9
      
https://github.com/qemu/qemu/commit/b89485a52e38dcdacffa311706734ee82a97fab9
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M include/standard-headers/asm-x86/hyperv.h
    M include/standard-headers/linux/input.h
    M include/standard-headers/linux/types.h
    M include/standard-headers/linux/virtio_balloon.h
    M include/standard-headers/linux/virtio_blk.h
    M linux-headers/asm-arm64/kvm.h
    M linux-headers/asm-powerpc/epapr_hcalls.h
    M linux-headers/asm-powerpc/kvm.h
    M linux-headers/asm-x86/unistd_32.h
    M linux-headers/asm-x86/unistd_64.h
    M linux-headers/linux/kvm.h
    M linux-headers/linux/userfaultfd.h
    M linux-headers/linux/vfio.h
    M linux-headers/linux/vhost.h

  Log Message:
  -----------
  update Linux headers to 4.6

Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 1b0d9b05d45af1d38a1b354a57d7cd16775fee87
      
https://github.com/qemu/qemu/commit/1b0d9b05d45af1d38a1b354a57d7cd16775fee87
  Author: Andrey Smetanin <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M target-i386/hyperv.c

  Log Message:
  -----------
  target-i386/kvm: Hyper-V VMBus hypercalls blank handlers

Add Hyper-V VMBus hypercalls blank handlers which
just returns error code - HV_STATUS_INVALID_HYPERCALL_CODE.
This is required when the synthetic interrupt controller is
active.

Fixes: 50efe82c3c27195162dd8df273eadd77d8aecad3
Signed-off-by: Andrey Smetanin <address@hidden>
Reviewed-by: Roman Kagan <address@hidden>
CC: Paolo Bonzini <address@hidden>
CC: Richard Henderson <address@hidden>
CC: Eduardo Habkost <address@hidden>
CC: "Andreas Färber" <address@hidden>
CC: Marcelo Tosatti <address@hidden>
CC: Roman Kagan <address@hidden>
CC: Denis V. Lunev <address@hidden>
CC: address@hidden
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 85bc2a15121e8bcd9f15eb75794a1eacca9d84bd
      
https://github.com/qemu/qemu/commit/85bc2a15121e8bcd9f15eb75794a1eacca9d84bd
  Author: Marc-André Lureau <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M exec.c

  Log Message:
  -----------
  memory: fix segv on qemu_ram_free(block=0x0)

Since f1060c55bf1377b4, the pointer is directly passed to
qemu_ram_free(). However, on initialization failure, it may be called
with a NULL pointer. Return immediately in this case.

This fixes a SEGV when memory initialization failed, for example
permission denied on open backing store /dev/hugepages, with -object
memory-backend-file,mem-path=/dev/hugepages.

Program received signal SIGSEGV, Segmentation fault.
0x00005555556e67e7 in qemu_ram_free (block=0x0) at 
/home/elmarco/src/qemu/exec.c:1775

Signed-off-by: Marc-André Lureau <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 273c515c0a0b0c5357e421a45de2a3b3138c77e7
      
https://github.com/qemu/qemu/commit/273c515c0a0b0c5357e421a45de2a3b3138c77e7
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M target-i386/kvm.c

  Log Message:
  -----------
  target-i386: do not pass MSR_TSC_AUX to KVM ioctls if CPUID bit is not set

KVM does not let you read or write this MSR if the corresponding CPUID
bit is not set.  This in turn causes MSRs that come after MSR_TSC_AUX
to be ignored by KVM_SET_MSRS.

One visible symptom is that s3.flat from kvm-unit-tests fails with
CPUs that do not have RDTSCP, because the SMBASE is not reset to
0x30000 after reset.

Fixes: c9b8f6b6210847b4381c5b2ee172b1c7eb9985d6
Cc: address@hidden
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 48e1a45c3166d659f781171a47dabf4a187ed7a5
      
https://github.com/qemu/qemu/commit/48e1a45c3166d659f781171a47dabf4a187ed7a5
  Author: Paolo Bonzini <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M target-i386/kvm.c

  Log Message:
  -----------
  target-i386: assert that KVM_GET/SET_MSRS can set all requested MSRs

This would have caught the bug in the previous patch.

Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: f0707d2e03186092f778269a9d22ec78481f12dc
      
https://github.com/qemu/qemu/commit/f0707d2e03186092f778269a9d22ec78481f12dc
  Author: Cédric Le Goater <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M scripts/checkpatch.pl

  Log Message:
  -----------
  checkpatch: add target_ulong to typelist

In some occasions, a patch [1] can start with a hunk containing a
simple type cast. At the time annotate_values() is run, the type is
unknown and the cast type is misinterpreted as a identifier, resulting
in an error if it is followed with a negative value:

        ERROR: spaces required around that '-' (ctx:WxV)

It seems complex to catch all possible types in a cast expression. So,
as a fallback solution, let's add some common qemu types to the
typeList array.

[1] http://lists.nongnu.org/archive/html/qemu-devel/2016-03/msg06741.html

Signed-off-by: Cédric Le Goater <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 340849a9ff2a246bbc9a2da3f079c9fdbd2d5852
      
https://github.com/qemu/qemu/commit/340849a9ff2a246bbc9a2da3f079c9fdbd2d5852
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M tests/test-io-channel-socket.c
    M util/qemu-sockets.c

  Log Message:
  -----------
  util: retry getaddrinfo if getting EAI_BADFLAGS with AI_V4MAPPED

The FreeBSD header files define the AI_V4MAPPED but its
implementation of getaddrinfo() always returns an error
when that flag is set. eg

  address resolution failed for localhost:9000: Invalid value for ai_flags

There are also reports of the same problem on OS-X 10.6

Since AI_V4MAPPED is not critical functionality, if we
get an EAI_BADFLAGS error then just retry without the
AI_V4MAPPED flag set. Use a static var to cache this
status so we don't have to retry on every single call.

Also remove its use from the test suite since it serves
no useful purpose there.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 53628efbc8aa7a7ab5354d24b971f4d69452151d
      
https://github.com/qemu/qemu/commit/53628efbc8aa7a7ab5354d24b971f4d69452151d
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M qemu-char.c

  Log Message:
  -----------
  char: fix broken EAGAIN retry on OS-X due to errno clobbering

Some of the chardev I/O paths really want to write the
complete data buffer even though the channel is in
non-blocking mode. To achieve this they look for EAGAIN
and g_usleep() for 100ms. Unfortunately the code is set
to check errno == EAGAIN a second time, after the g_usleep()
call has completed. On OS-X at least, g_usleep clobbers
errno to ETIMEDOUT, causing the retry to be skipped.

This failure to retry means the full data isn't written
to the chardev backend, which causes various failures
including making the tests/ahci-test qtest hang.

Rather than playing games trying to reset errno just
simplify the code to use a goto to retry instead of a
a loop.

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 64c800f808748522727847b9cdc73412f22dffb9
      
https://github.com/qemu/qemu/commit/64c800f808748522727847b9cdc73412f22dffb9
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M qemu-char.c

  Log Message:
  -----------
  char: ensure all clients are in non-blocking mode

Only some callers of tcp_chr_new_client are putting the
socket client into non-blocking mode. Move the call to
qio_channel_set_blocking() into the tcp_chr_new_client
method to guarantee that all code paths set non-blocking
mode

Reported-by: Andrew Baumann <address@hidden>
Reported-by: Laurent Vivier <address@hidden>
Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 0c52a80eeb1d50c01977a295f2697528bb60184b
      
https://github.com/qemu/qemu/commit/0c52a80eeb1d50c01977a295f2697528bb60184b
  Author: Cao jin <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M docs/memory.txt

  Log Message:
  -----------
  doc/memory: update MMIO section

There is no memory_region_io(). And remove a stray '-'.

Signed-off-by: Cao jin <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: a89ef0c357abfbf1f76e2d7418fe3c880e0364bd
      
https://github.com/qemu/qemu/commit/a89ef0c357abfbf1f76e2d7418fe3c880e0364bd
  Author: Eric Blake <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M block/nbd-client.c

  Log Message:
  -----------
  nbd: don't request FUA on FLUSH

The NBD protocol does not clearly document what will happen
if a client sends NBD_CMD_FLAG_FUA on NBD_CMD_FLUSH.
Historically, both the qemu and upstream NBD servers silently
ignored that flag, but that feels a bit risky.  Meanwhile, the
qemu NBD client unconditionally sends the flag (without even
bothering to check whether the caller cares; at least with
NBD_CMD_WRITE the client only sends FUA if requested by a
higher layer).

There is ongoing discussion on the NBD list to fix the
protocol documentation to require that the server MUST ignore
the flag (unless the kernel folks can better explain what FUA
means for a flush), but until those doc improvements land, the
current nbd.git master was recently changed to reject the flag
with EINVAL (see nbd commit ab22e082), which now makes it
impossible for a qemu client to use FLUSH with an upstream NBD
server.

We should not send FUA with flush unless the upstream protocol
documents what it will do, and even then, it should be something
that the caller can opt into, rather than being unconditional.

Signed-off-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: ccffff48c93c30733783b05cd1ef843a4c274653
      
https://github.com/qemu/qemu/commit/ccffff48c93c30733783b05cd1ef843a4c274653
  Author: Alex Bennée <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  cpus: don't use atomic_read for vm_clock_warp_start

As vm_clock_warp_start is a 64 bit value this causes problems for the
compiler trying to come up with a suitable atomic operation on 32 bit
hosts. Because the variable is protected by vm_clock_seqlock, we check its
value inside a seqlock critical section.

Signed-off-by: Alex Bennée <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: ca47a926ad780d5cc91a205d25a859128cdf800e
      
https://github.com/qemu/qemu/commit/ca47a926ad780d5cc91a205d25a859128cdf800e
  Author: Alex Bennée <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M include/qemu/atomic.h

  Log Message:
  -----------
  include/qemu/atomic: add compile time asserts

To be safely portable no atomic access should be trying to do more than
the natural word width of the host. The most common abuse is trying to
atomically access 64 bit values on a 32 bit host.

This patch adds some QEMU_BUILD_BUG_ON to the __atomic instrinsic paths
to create a build failure if (sizeof(*ptr) > sizeof(void *)).

Signed-off-by: Alex Bennée <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: b6afc654aec977543d89c26a059278f327282d23
      
https://github.com/qemu/qemu/commit/b6afc654aec977543d89c26a059278f327282d23
  Author: Eric Blake <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M nbd/client.c

  Log Message:
  -----------
  nbd: Fix poor debug message

The client sends messages to the server, not itself.

Signed-off-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 2354bebaa408b97adf008d3e07f439300b0a5c06
      
https://github.com/qemu/qemu/commit/2354bebaa408b97adf008d3e07f439300b0a5c06
  Author: Daniel P. Berrange <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M net/netmap.c

  Log Message:
  -----------
  net: fix missing include of qapi/error.h in netmap.c

The netmap.c file fails to build on FreeBSD with

net/netmap.c:95:9: warning: implicit declaration of function 'error_setg_errno' 
is invalid in C99 [-Wimplicit-function-declaration]
     error_setg_errno(errp, errno, "Failed to nm_open() %s",
     ^
net/netmap.c:432:9: warning: implicit declaration of function 'error_propagate' 
is invalid in C99 [-Wimplicit-function-declaration]
     error_propagate(errp, err);
     ^

Signed-off-by: Daniel P. Berrange <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: cc621a9838cb045a370717a764907a6d6c47fa76
      
https://github.com/qemu/qemu/commit/cc621a9838cb045a370717a764907a6d6c47fa76
  Author: Peter Maydell <address@hidden>
  Date:   2016-04-05 (Tue, 05 Apr 2016)

  Changed paths:
    M block/nbd-client.c
    M cpus.c
    M docs/memory.txt
    M exec.c
    M include/qemu/atomic.h
    M include/standard-headers/asm-x86/hyperv.h
    M include/standard-headers/linux/input.h
    M include/standard-headers/linux/types.h
    M include/standard-headers/linux/virtio_balloon.h
    M include/standard-headers/linux/virtio_blk.h
    M linux-headers/asm-arm64/kvm.h
    M linux-headers/asm-powerpc/epapr_hcalls.h
    M linux-headers/asm-powerpc/kvm.h
    M linux-headers/asm-x86/unistd_32.h
    M linux-headers/asm-x86/unistd_64.h
    M linux-headers/linux/kvm.h
    M linux-headers/linux/userfaultfd.h
    M linux-headers/linux/vfio.h
    M linux-headers/linux/vhost.h
    M nbd/client.c
    M qemu-char.c
    M scripts/checkpatch.pl
    M target-i386/hyperv.c
    M target-i386/kvm.c
    M tests/test-io-channel-socket.c
    M util/qemu-sockets.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging

* FreeBSD build fixes (atomics, qapi/error.h)
* x86 KVM fixes (SynIC, KVM_GET/SET_MSRS)
* Memory API doc fix
* checkpatch fix
* Chardev and socket fixes
* NBD fixes
* exec.c SEGV fix

# gpg: Signature made Tue 05 Apr 2016 10:47:49 BST using RSA key ID 78C7AE83
# gpg: Good signature from "Paolo Bonzini <address@hidden>"
# gpg:                 aka "Paolo Bonzini <address@hidden>"

* remotes/bonzini/tags/for-upstream:
  net: fix missing include of qapi/error.h in netmap.c
  nbd: Fix poor debug message
  include/qemu/atomic: add compile time asserts
  cpus: don't use atomic_read for vm_clock_warp_start
  nbd: don't request FUA on FLUSH
  doc/memory: update MMIO section
  char: ensure all clients are in non-blocking mode
  char: fix broken EAGAIN retry on OS-X due to errno clobbering
  util: retry getaddrinfo if getting EAI_BADFLAGS with AI_V4MAPPED
  checkpatch: add target_ulong to typelist
  target-i386: assert that KVM_GET/SET_MSRS can set all requested MSRs
  target-i386: do not pass MSR_TSC_AUX to KVM ioctls if CPUID bit is not set
  memory: fix segv on qemu_ram_free(block=0x0)
  target-i386/kvm: Hyper-V VMBus hypercalls blank handlers
  update Linux headers to 4.6

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


Compare: https://github.com/qemu/qemu/compare/972e3ca3c127...cc621a9838cb

reply via email to

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