qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 181ce1: configure: recognize more rpmbuild ma


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 181ce1: configure: recognize more rpmbuild macros
Date: Mon, 14 May 2018 03:07:36 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 181ce1d05c6d4f1c80f0e7ebb41e489c2b541edf
      
https://github.com/qemu/qemu/commit/181ce1d05c6d4f1c80f0e7ebb41e489c2b541edf
  Author: Olaf Hering <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M configure

  Log Message:
  -----------
  configure: recognize more rpmbuild macros

Extend the list of recognized, but ignored options from rpms %configure
macro. This fixes build on hosts running SUSE Linux.

Cc: address@hidden
Signed-off-by: Olaf Hering <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: f056158d694d2adc63ff120ca71c73ae8b14426c
      
https://github.com/qemu/qemu/commit/f056158d694d2adc63ff120ca71c73ae8b14426c
  Author: Markus Armbruster <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  cpus: Fix event order on resume of stopped guest

When resume of a stopped guest immediately runs into block device
errors, the BLOCK_IO_ERROR event is sent before the RESUME event.

Reproducer:

1. Create a scratch image
   $ dd if=/dev/zero of=scratch.img bs=1M count=100

   Size doesn't actually matter.

2. Prepare blkdebug configuration:

   $ cat >blkdebug.conf <<EOF
   [inject-error]
   event = "write_aio"
   errno = "5"
   EOF

   Note that errno 5 is EIO.

3. Run a guest with an additional scratch disk, i.e. with additional
   arguments
   -drive 
if=none,id=scratch-drive,format=raw,werror=stop,file=blkdebug:blkdebug.conf:scratch.img
   -device virtio-blk-pci,id=scratch,drive=scratch-drive

   The blkdebug part makes all writes to the scratch drive fail with
   EIO.  The werror=stop pauses the guest on write errors.

4. Connect to the QMP socket e.g. like this:
   $ socat UNIX:/your/qmp/socket 
READLINE,history=$HOME/.qmp_history,prompt='QMP> '

   Issue QMP command 'qmp_capabilities':
   QMP> { "execute": "qmp_capabilities" }

5. Boot the guest.

6. In the guest, write to the scratch disk, e.g. like this:

   # dd if=/dev/zero of=/dev/vdb count=1

   Do double-check the device specified with of= is actually the
   scratch device!

7. Issue QMP command 'cont':
   QMP> { "execute": "cont" }

After step 6, I get a BLOCK_IO_ERROR event followed by a STOP event.  Good.

After step 7, I get BLOCK_IO_ERROR, then RESUME, then STOP.  Not so
good; I'd expect RESUME, then BLOCK_IO_ERROR, then STOP.

The funny event order confuses libvirt: virsh -r domstate DOMAIN
--reason reports "paused (unknown)" rather than "paused (I/O error)".

The culprit is vm_prepare_start().

    /* Ensure that a STOP/RESUME pair of events is emitted if a
     * vmstop request was pending.  The BLOCK_IO_ERROR event, for
     * example, according to documentation is always followed by
     * the STOP event.
     */
    if (runstate_is_running()) {
  qapi_event_send_stop(&error_abort);
  res = -1;
    } else {
  replay_enable_events();
  cpu_enable_ticks();
  runstate_set(RUN_STATE_RUNNING);
  vm_state_notify(1, RUN_STATE_RUNNING);
    }

    /* We are sending this now, but the CPUs will be resumed shortly later */
    qapi_event_send_resume(&error_abort);
    return res;

When resuming a stopped guest, we take the else branch before we get
to sending RESUME.  vm_state_notify() runs virtio_vmstate_change(),
among other things.  This restarts I/O, triggering the BLOCK_IO_ERROR
event.

Reshuffle vm_prepare_start() to send the RESUME event earlier.

Fixes RHBZ 1566153.

Cc: Paolo Bonzini <address@hidden>
Signed-off-by: Markus Armbruster <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 54961aac190df28d311802364d19e18d5cda8bab
      
https://github.com/qemu/qemu/commit/54961aac190df28d311802364d19e18d5cda8bab
  Author: Cédric Le Goater <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M cpus.c

  Log Message:
  -----------
  cpus: tcg: fix never exiting loop on unplug

Commit 9b0605f9837b ("cpus: tcg: unregister thread with RCU, fix
exiting of loop on unplug") changed the exit condition of the loop in
the vCPU thread function but forgot to remove the beginning 'while (1)'
statement. The resulting code :

        while (1) {
        ...
        } while (!cpu->unplug || cpu_can_run(cpu));

is a sequence of two distinct two while() loops, the first not exiting
in case of an unplug event.

Remove the first while (1) to fix CPU unplug.

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


  Commit: 82870f3c0295d36c342942b4757b2b1ddd55ab19
      
https://github.com/qemu/qemu/commit/82870f3c0295d36c342942b4757b2b1ddd55ab19
  Author: Peter Xu <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M scripts/checkpatch.pl

  Log Message:
  -----------
  checkpatch.pl: add common glib defines to typelist

Otherwise it can warn this:

  ERROR: space prohibited between function name and open parenthesis '('

When with things like this:

  typedef gboolean (*it_tree_iterator)(ITValue start, ITValue end);

CC: Paolo Bonzini <address@hidden>
CC: "Daniel P. Berrangé" <address@hidden>
CC: Vladimir Sementsov-Ogievskiy <address@hidden>
CC: Fam Zheng <address@hidden>
Signed-off-by: Peter Xu <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 770dec2627b085457280490ac0543def97396fef
      
https://github.com/qemu/qemu/commit/770dec2627b085457280490ac0543def97396fef
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M include/qom/object.h
    M qom/object.c

  Log Message:
  -----------
  qom: allow object_get_canonical_path_component without parent

Just return NULL; any callers that cause a change in behavior
would have caused an assertion failure before, so this is safe.

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


  Commit: 29de4ec164ba2ceac4983ffd08491ea98ca8f8af
      
https://github.com/qemu/qemu/commit/29de4ec164ba2ceac4983ffd08491ea98ca8f8af
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M backends/hostmem.c
    M include/sysemu/hostmem.h
    M numa.c
    M qom/object_interfaces.c

  Log Message:
  -----------
  memdev: remove "id" property

The "id" property is unnecessary and can be replaced simply with
object_get_canonical_path_component.  This patch mostly undoes commit
e1ff3c67e8 ("monitor: fix qmp/hmp query-memdev not reporting IDs of
memory backends", 2017-01-12).

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


  Commit: 4269c82bf72f7e171a03a09b9264b0db76ae0050
      
https://github.com/qemu/qemu/commit/4269c82bf72f7e171a03a09b9264b0db76ae0050
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M include/exec/cpu-all.h
    M include/exec/memory.h
    A include/exec/memory_ldst.inc.h
    A include/exec/memory_ldst_phys.inc.h
    M memory_ldst.inc.c

  Log Message:
  -----------
  exec: move memory access declarations to a common header, inline *_phys 
functions

For now, this reduces the text size very slightly due to the newly-added
inlining:

   text size before: 9301965
   text size after: 9300645

Later, however, the declarations in include/exec/memory_ldst.inc.h will be
reused for the MemoryRegionCache slow path functions.

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


  Commit: ad2804d9e47df2dab642a253502b5ceef233f450
      
https://github.com/qemu/qemu/commit/ad2804d9e47df2dab642a253502b5ceef233f450
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M exec.c

  Log Message:
  -----------
  exec: small changes to flatview_do_translate

Prepare for extracting the IOMMU part to a separate function.  Mostly
cosmetic; the only semantic change is that, if there is more than one
cascaded IOMMU and the second one fails to translate, *plen_out is now
adjusted according to the page mask of the first IOMMU.

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


  Commit: a411c84b561baa94b28165c52f21c33517ee8f59
      
https://github.com/qemu/qemu/commit/a411c84b561baa94b28165c52f21c33517ee8f59
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M exec.c

  Log Message:
  -----------
  exec: extract address_space_translate_iommu, fix page_mask corner case

This will be used to process IOMMUs in a MemoryRegionCache.  This
includes a small bugfix, in that the returned page_mask is now
correctly -1 if the IOMMU memory region maps the entire address
space directly.  Previously, address_space_get_iotlb_entry would
return ~TARGET_PAGE_MASK.

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


  Commit: 48564041a73adbbff52834f9edbe3806fceefab7
      
https://github.com/qemu/qemu/commit/48564041a73adbbff52834f9edbe3806fceefab7
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M exec.c
    M include/exec/cpu-all.h
    M include/exec/memory-internal.h
    M include/exec/memory.h
    A include/exec/memory_ldst_cached.inc.h
    M memory.c

  Log Message:
  -----------
  exec: reintroduce MemoryRegion caching

MemoryRegionCache was reverted to "normal" address_space_* operations
for 2.9, due to lack of support for IOMMUs.  Reinstate the
optimizations, caching only the IOMMU translation at address_cache_init
but not the IOMMU lookup and target AddressSpace translation are not
cached; now that MemoryRegionCache supports IOMMUs, it becomes more widely
applicable too.

The inlined fast path is defined in memory_ldst_cached.inc.h, while the
slow path uses memory_ldst.inc.c as before.  The smaller fast path causes
a little code size reduction in MemoryRegionCache users:

    hw/virtio/virtio.o text size before: 32373
    hw/virtio/virtio.o text size after: 31941

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


  Commit: d820fa5b62d2ae2311702bf307f1b91dc338fd25
      
https://github.com/qemu/qemu/commit/d820fa5b62d2ae2311702bf307f1b91dc338fd25
  Author: Peter Xu <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M util/qemu-thread-posix.c

  Log Message:
  -----------
  qemu-thread: always keep the posix wrapper layer

We will conditionally have a wrapper layer depending on whether the host
has the PTHREAD_SETNAME capability.  It complicates stuff.  Let's keep
the wrapper there; we opt out the pthread_setname_np() call only.

Signed-off-by: Peter Xu <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 7afcfd32a65688401cba337eb99f65dc24d9750e
      
https://github.com/qemu/qemu/commit/7afcfd32a65688401cba337eb99f65dc24d9750e
  Author: Roman Kagan <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M scripts/update-linux-headers.sh

  Log Message:
  -----------
  update-linux-headers: drop hyperv.h

As of mainline linux commit 5a485803221777013944cbd1a7cd5c62efba3ffa
"x86/hyper-v: move hyperv.h out of uapi" by Vitaly Kuznetsov, no linux
uapi header includes it, so we no longer need to create a stub for it.

Cc: Vitaly Kuznetsov <address@hidden>
Signed-off-by: Roman Kagan <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 20efc49ed625585809401d8293ad9267927a6a4a
      
https://github.com/qemu/qemu/commit/20efc49ed625585809401d8293ad9267927a6a4a
  Author: Daniel P. Berrangé <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M accel/accel.c
    M include/qemu/option.h
    M util/qemu-option.c

  Log Message:
  -----------
  accel: use g_strsplit for parsing accelerator names

Instead of re-using the get_opt_name() method from QemuOpts to split a
string on ':', just use g_strsplit().

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


  Commit: e652714f98f22e8882e88e3d563b025c5b00feec
      
https://github.com/qemu/qemu/commit/e652714f98f22e8882e88e3d563b025c5b00feec
  Author: Daniel P. Berrangé <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M tests/test-qemu-opts.c
    M util/qemu-option.c

  Log Message:
  -----------
  opts: don't silently truncate long parameter keys

The existing QemuOpts parsing code uses a fixed size 128 byte buffer
for storing the parameter keys. If a key exceeded this size it was
silently truncate and no error reported to the user. This behaviour was
reasonable & harmless because traditionally the key names are all
statically declared, and it was known that no code was declaring a key
longer than 127 bytes. This assumption, however, ceased to be valid once
the block layer added support for dot-separate compound keys. This
syntax allows for keys that can be arbitrarily long, limited only by the
number of block drivers you can stack up. With this usage, silently
truncating the key name can never lead to correct behaviour.

Hopefully such truncation would turn into an error, when the block code
then tried to extract options later, but there's no guarantee that will
happen. It is conceivable that an option specified by the user may be
truncated and then ignored. This could have serious consequences,
possibly even leading to security problems if the ignored option set a
security relevant parameter.

If the operating system didn't limit the user's argv when spawning QEMU,
the code should honour whatever length arguments were given without
imposing its own length restrictions. This patch thus changes the code
to use a heap allocated buffer for storing the keys during parsing,
lifting the arbitrary length restriction.

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


  Commit: 950c4e6c94b15cd0d8b63891dddd7a8dbf458e6a
      
https://github.com/qemu/qemu/commit/950c4e6c94b15cd0d8b63891dddd7a8dbf458e6a
  Author: Daniel P. Berrangé <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M hw/i386/multiboot.c
    M include/qemu/option.h
    M util/qemu-option.c

  Log Message:
  -----------
  opts: don't silently truncate long option values

The existing QemuOpts parsing code uses a fixed size 1024 byte buffer
for storing the option values. If a value exceeded this size it was
silently truncated and no error reported to the user. Long option values
is not a common scenario, but it is conceivable that they will happen.
eg if the user has a very deeply nested filesystem it would be possible
to come up with a disk path that was > 1024 bytes. Most of the time if
such data was silently truncated, the user would get an error about
opening a non-existant disk. If they're unlucky though, QEMU might use a
completely different disk image from another VM, which could be
considered a security issue. Another example program was in using the
-smbios command line arg with very large data blobs. In this case the
silent truncation will be providing semantically incorrect data to the
guest OS for SMBIOS tables.

If the operating system didn't limit the user's argv when spawning QEMU,
the code should honour whatever length arguments were given without
imposing its own length restrictions. This patch thus changes the code
to use a heap allocated buffer for storing the values during parsing,
lifting the arbitrary length restriction.

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


  Commit: bf3175b49952628f96d72d1247d8bb3aa5c2466c
      
https://github.com/qemu/qemu/commit/bf3175b49952628f96d72d1247d8bb3aa5c2466c
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M target/i386/sev.c

  Log Message:
  -----------
  target/i386: sev: fix memory leaks

Reported by Coverity.

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


  Commit: 454012997e0818e371750893c87c28c155ef14e3
      
https://github.com/qemu/qemu/commit/454012997e0818e371750893c87c28c155ef14e3
  Author: Thomas Huth <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M qemu-doc.texi
    M qemu-options.hx
    M vl.c

  Log Message:
  -----------
  qemu-options: Mark -virtioconsole as deprecated

The qemu-doc already states that this option is only maintained for
backward compatibility and "-device virtconsole" should be used
instead. So let's take the next step and mark this option officially
as deprecated.

Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 281b95231d79a7a7ecc93a51ebb8e68b1ce7f1e5
      
https://github.com/qemu/qemu/commit/281b95231d79a7a7ecc93a51ebb8e68b1ce7f1e5
  Author: Thomas Huth <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M qemu-options.hx

  Log Message:
  -----------
  qemu-options: Remove remainders of the -tdf option

The -tdf options has been removed with d07aa197c5a1556449361a0cbb5108e2,
but apparently I forgot to remove the corresponding two lines from
qemu-options.hx, so this option is still "available" and just silently
ignored. Kill it now for good.

Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 1217d6ca2bf28c0febe1bd7d5b3fa912bbf6af2a
      
https://github.com/qemu/qemu/commit/1217d6ca2bf28c0febe1bd7d5b3fa912bbf6af2a
  Author: Thomas Huth <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M include/qemu-common.h
    M os-posix.c
    M os-win32.c
    M vl.c

  Log Message:
  -----------
  qemu-options: Bail out on unsupported options instead of silently ignoring 
them

The dangling remainder of the -tdf option revealed a deficiency in our
option parsing: Options that have been declared, but are not supported
in the switch-case statement in vl.c and not handled in the OS-specifc
os_parse_cmd_args() functions are currently silently ignored. We should
rather tell the users that they specified something that we can not
handle, so let's print an error message and exit instead.

Reported-by: Markus Armbruster <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: ec910caba92ea6db882a3b3d2d992caea6a1c160
      
https://github.com/qemu/qemu/commit/ec910caba92ea6db882a3b3d2d992caea6a1c160
  Author: Thomas Huth <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M qemu-doc.texi
    M qemu-options.hx
    M vl.c

  Log Message:
  -----------
  qemu-options: Remove deprecated -no-kvm-pit-reinjection

Deprecated since the beginning when it was added for compatibility with
the ancient qemu-kvm fork of QEMU, and it even printed out the deprecation
warning since right from the start (i.e. QEMU v1.3.0), so it's really time
to remove this now.

Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: d8ab6cb7985e6151b9dd0025aa8a9ee998bdc958
      
https://github.com/qemu/qemu/commit/d8ab6cb7985e6151b9dd0025aa8a9ee998bdc958
  Author: Thomas Huth <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M qemu-doc.texi
    M qemu-options.hx
    M vl.c

  Log Message:
  -----------
  qemu-options: Remove deprecated -no-kvm-irqchip

We've never documented this option in our qemu-doc, so apart from the users
that already used the old qemu-kvm fork before, most users should not be
aware of this option at all. It's been marked as deprecated in the source
code for a long time already, and officially marked as deprecated in the
documentation since QEMU v2.10, so it should be fine to remove this now.

Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 45b47130f4b7b53eb1437e8301bfeb4e73490413
      
https://github.com/qemu/qemu/commit/45b47130f4b7b53eb1437e8301bfeb4e73490413
  Author: Daniel P. Berrangé <address@hidden>
  Date:   2018-05-09 (Wed, 09 May 2018)

  Changed paths:
    M qemu-doc.texi

  Log Message:
  -----------
  qemu-doc: provide details of supported build platforms

Describe the policy the project uses to decide which OS are supported as
build platforms. This will:

  - Allow maintainers to determine when the minimum version of a 3rd
    party piece of software can be increased without negatively
    impacting supported platforms.

  - Allow tailoring of CI environments to match the intended supported
    build platforms.

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


  Commit: ba6a4fd95de1e0a85bfbe43330448f16486e2181
      
https://github.com/qemu/qemu/commit/ba6a4fd95de1e0a85bfbe43330448f16486e2181
  Author: Vitaly Kuznetsov <address@hidden>
  Date:   2018-05-11 (Fri, 11 May 2018)

  Changed paths:
    M target/i386/cpu.c
    M target/i386/cpu.h
    M target/i386/hyperv-proto.h
    M target/i386/kvm.c
    M target/i386/machine.c

  Log Message:
  -----------
  i386/kvm: add support for Hyper-V reenlightenment MSRs

KVM recently gained support for Hyper-V Reenlightenment MSRs which are
required to make KVM-on-Hyper-V enable TSC page clocksource to its guests
when INVTSC is not passed to it (and it is not passed by default in Qemu
as it effectively blocks migration).

Signed-off-by: Vitaly Kuznetsov <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 8a99e9a30ca8c93082d9032627c5d522ff66e664
      
https://github.com/qemu/qemu/commit/8a99e9a30ca8c93082d9032627c5d522ff66e664
  Author: Philippe Mathieu-Daudé <address@hidden>
  Date:   2018-05-11 (Fri, 11 May 2018)

  Changed paths:
    M configure
    M rules.mak

  Log Message:
  -----------
  configure: Really use local libfdt if the system one is too old

QEMU requires libfdt version >= 1.4.2.
If the host has an older libfdt installed, the configure script will use
a (git cloned) local version.

Example with Debian 8:
    $ dpkg-query --showformat='${Version}\n' --show libfdt-dev
    1.4.0+dfsg-1
    $ ./configure
    [...]
    fdt support       yes          # from git submodule 'dtc'

If this case occurs, the linker will have 2 different libfdt available in
the library search path. The default behavior is to search the system path
first, then the local path.

Even if the configure script noticed the libfdt is too old and clone a more
recent locally, when linking the system library is selected first, and the
link process eventually fails:

      LINK    mips64el-softmmu/qemu-system-mips64el
    ../hw/core/loader-fit.o: In function `load_fit':
    /root/src/github.com/philmd/qemu/hw/core/loader-fit.c:278: undefined 
reference to `fdt_first_subnode'
    /root/src/github.com/philmd/qemu/hw/core/loader-fit.c:286: undefined 
reference to `fdt_next_subnode'
    /root/src/github.com/philmd/qemu/hw/core/loader-fit.c:277: undefined 
reference to `fdt_first_subnode'
    collect2: error: ld returned 1 exit status
    Makefile:201: recipe for target 'qemu-system-mips64el' failed
    make[1]: *** [qemu-system-mips64el] Error 1

QEMU already uses a kludge to enforce local CFLAGS before system ones for
libpixman and libfdt, add a similar kludge for the LDFLAGS to enforce using
the local libfdt.

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>


  Commit: e3971d612abd8a11b15e95add672fc993f65db2a
      
https://github.com/qemu/qemu/commit/e3971d612abd8a11b15e95add672fc993f65db2a
  Author: Philippe Mathieu-Daudé <address@hidden>
  Date:   2018-05-11 (Fri, 11 May 2018)

  Changed paths:
    M configure

  Log Message:
  -----------
  configure: Display if libfdt is from system or git

The configure script outputs "yes" regardless which libfdt is used:

  ./configure
  [...]
  fdt support       yes

Sometimes you can have both system and local git version available,
change the configure script to display which library got selected:

  debian8$ dpkg-query --showformat='${Version}\n' --show libfdt-dev
  1.4.0+dfsg-1

  debian8$ ./configure
  [...]
  fdt support       git

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 03d92e26532cba48eb511633c41ec81555fb40ce
      
https://github.com/qemu/qemu/commit/03d92e26532cba48eb511633c41ec81555fb40ce
  Author: Philippe Mathieu-Daudé <address@hidden>
  Date:   2018-05-11 (Fri, 11 May 2018)

  Changed paths:
    M .shippable.yml

  Log Message:
  -----------
  shippable: Remove Debian 8 libfdt kludge

This kludge was added in a825ca06137, but a cleaner and more generic
fix is now available (see ##COMMIT_CONFIGURE_LIBFDT_LDFLAGS_SHA##).

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 814e1110d51f287f5616ffc04b788f6477519560
      
https://github.com/qemu/qemu/commit/814e1110d51f287f5616ffc04b788f6477519560
  Author: Jan Kiszka <address@hidden>
  Date:   2018-05-11 (Fri, 11 May 2018)

  Changed paths:
    M Makefile

  Log Message:
  -----------
  build: Silence dtc directory creation

Align with other mkdir calls.

Signed-off-by: Jan Kiszka <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 3ff333effa319df6178f138d9cf32e3937419790
      
https://github.com/qemu/qemu/commit/3ff333effa319df6178f138d9cf32e3937419790
  Author: David Hildenbrand <address@hidden>
  Date:   2018-05-11 (Fri, 11 May 2018)

  Changed paths:
    M hw/mem/pc-dimm.c

  Log Message:
  -----------
  pc-dimm: fix error messages if no slots were defined

If no slots were defined we try to allocate an empty bitmap, which
fails.

Signed-off-by: David Hildenbrand <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 5b27a92dcc5afb11d38c7fe0a637d5d64d31108a
      
https://github.com/qemu/qemu/commit/5b27a92dcc5afb11d38c7fe0a637d5d64d31108a
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-05-11 (Fri, 11 May 2018)

  Changed paths:
    M target/cris/translate.c
    R target/cris/translate_v10.c
    A target/cris/translate_v10.inc.c
    M target/mips/translate.c
    R target/mips/translate_init.c
    A target/mips/translate_init.inc.c
    M target/ppc/int_helper.c
    R target/ppc/mfrom_table.c
    A target/ppc/mfrom_table.inc.c
    M target/ppc/translate.c
    R target/ppc/translate_init.c
    A target/ppc/translate_init.inc.c
    R ui/vnc-enc-zrle-template.c
    M ui/vnc-enc-zrle.c
    A ui/vnc-enc-zrle.inc.c

  Log Message:
  -----------
  rename included C files to foo.inc.c, remove osdep.h

osdep.h is only needed for files that are compiled directly.
Remove it from included C source files, and rename them to
*.inc.c so that scripts/clean-includes knows to skip them.

Cc: Eric Blake <address@hidden>
Cc: Michael S. Tsirkin <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: 9ba1733a7639243500fc71a31e7b86fdfeb58e7b
      
https://github.com/qemu/qemu/commit/9ba1733a7639243500fc71a31e7b86fdfeb58e7b
  Author: Peter Maydell <address@hidden>
  Date:   2018-05-14 (Mon, 14 May 2018)

  Changed paths:
    M .shippable.yml
    M Makefile
    M accel/accel.c
    M backends/hostmem.c
    M configure
    M cpus.c
    M exec.c
    M hw/i386/multiboot.c
    M hw/mem/pc-dimm.c
    M include/exec/cpu-all.h
    M include/exec/memory-internal.h
    M include/exec/memory.h
    A include/exec/memory_ldst.inc.h
    A include/exec/memory_ldst_cached.inc.h
    A include/exec/memory_ldst_phys.inc.h
    M include/qemu-common.h
    M include/qemu/option.h
    M include/qom/object.h
    M include/sysemu/hostmem.h
    M memory.c
    M memory_ldst.inc.c
    M numa.c
    M os-posix.c
    M os-win32.c
    M qemu-doc.texi
    M qemu-options.hx
    M qom/object.c
    M qom/object_interfaces.c
    M rules.mak
    M scripts/checkpatch.pl
    M scripts/update-linux-headers.sh
    M target/cris/translate.c
    R target/cris/translate_v10.c
    A target/cris/translate_v10.inc.c
    M target/i386/cpu.c
    M target/i386/cpu.h
    M target/i386/hyperv-proto.h
    M target/i386/kvm.c
    M target/i386/machine.c
    M target/i386/sev.c
    M target/mips/translate.c
    R target/mips/translate_init.c
    A target/mips/translate_init.inc.c
    M target/ppc/int_helper.c
    R target/ppc/mfrom_table.c
    A target/ppc/mfrom_table.inc.c
    M target/ppc/translate.c
    R target/ppc/translate_init.c
    A target/ppc/translate_init.inc.c
    M tests/test-qemu-opts.c
    R ui/vnc-enc-zrle-template.c
    M ui/vnc-enc-zrle.c
    A ui/vnc-enc-zrle.inc.c
    M util/qemu-option.c
    M util/qemu-thread-posix.c
    M vl.c

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

* Don't silently truncate extremely long words in the command line
* dtc configure fixes
* MemoryRegionCache second try
* Deprecated option removal
* add support for Hyper-V reenlightenment MSRs

# gpg: Signature made Fri 11 May 2018 13:33:46 BST
# gpg:                using RSA key BFFBD25F78C7AE83
# gpg: Good signature from "Paolo Bonzini <address@hidden>"
# gpg:                 aka "Paolo Bonzini <address@hidden>"
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1
#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83

* remotes/bonzini/tags/for-upstream: (29 commits)
  rename included C files to foo.inc.c, remove osdep.h
  pc-dimm: fix error messages if no slots were defined
  build: Silence dtc directory creation
  shippable: Remove Debian 8 libfdt kludge
  configure: Display if libfdt is from system or git
  configure: Really use local libfdt if the system one is too old
  i386/kvm: add support for Hyper-V reenlightenment MSRs
  qemu-doc: provide details of supported build platforms
  qemu-options: Remove deprecated -no-kvm-irqchip
  qemu-options: Remove deprecated -no-kvm-pit-reinjection
  qemu-options: Bail out on unsupported options instead of silently ignoring 
them
  qemu-options: Remove remainders of the -tdf option
  qemu-options: Mark -virtioconsole as deprecated
  target/i386: sev: fix memory leaks
  opts: don't silently truncate long option values
  opts: don't silently truncate long parameter keys
  accel: use g_strsplit for parsing accelerator names
  update-linux-headers: drop hyperv.h
  qemu-thread: always keep the posix wrapper layer
  exec: reintroduce MemoryRegion caching
  ...

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


Compare: https://github.com/qemu/qemu/compare/f5583c527f0e...9ba1733a7639
      **NOTE:** This service been marked for deprecation: 
https://developer.github.com/changes/2018-04-25-github-services-deprecation/

      Functionality will be removed from GitHub.com on January 31st, 2019.

reply via email to

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