qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] b9afab: iscsi: drop unused IscsiAIOCB.qiov fi


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] b9afab: iscsi: drop unused IscsiAIOCB.qiov field
Date: Tue, 04 Apr 2017 04:45:09 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: b9afaba891458d3e1f3f853a8cb6880498ed34e3
      
https://github.com/qemu/qemu/commit/b9afaba891458d3e1f3f853a8cb6880498ed34e3
  Author: Stefan Hajnoczi <address@hidden>
  Date:   2017-04-02 (Sun, 02 Apr 2017)

  Changed paths:
    M block/iscsi.c

  Log Message:
  -----------
  iscsi: drop unused IscsiAIOCB.qiov field

The IscsiAIOCB.qiov field has been unused since commit
063c3378a9e3c25cc0afac3c72e4823d0621e352 ("block/iscsi: introduce
bdrv_co_{readv, writev, flush_to_disk}") back in 2013.

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


  Commit: c7f15bc93661a36fec9fd0107654cf44d06c5992
      
https://github.com/qemu/qemu/commit/c7f15bc93661a36fec9fd0107654cf44d06c5992
  Author: Tejaswini Poluri <address@hidden>
  Date:   2017-04-02 (Sun, 02 Apr 2017)

  Changed paths:
    M target/i386/helper.c

  Log Message:
  -----------
  target-i386: fix "info lapic" segfault on isapc

Start QEMU with
"qemu-system-x86_64 -nographic -M isapc -serial none-monitor stdio"
and enter "info lapic" at the monitor prompt ⇒
Segmentation fault

Signed-off-by: Tejaswini Poluri <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>


  Commit: cb9a05a4f169347f85e345a2abe42c45e1d3157b
      
https://github.com/qemu/qemu/commit/cb9a05a4f169347f85e345a2abe42c45e1d3157b
  Author: Corey Minyard <address@hidden>
  Date:   2017-04-02 (Sun, 02 Apr 2017)

  Changed paths:
    M hw/ipmi/isa_ipmi_bt.c

  Log Message:
  -----------
  ipmi: Fix macro issues

Macro parameters should almost always have () around them when used.
llvm reported an error on this.

Remove redundant parenthesis and put parenthesis around the entire
macros with assignments in case they are used in an expression.

Remove some unused macros.

Reported in https://bugs.launchpad.net/bugs/1651167

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


  Commit: cc1e13913916f755fd2dc5041b8d4bf25d3ea88e
      
https://github.com/qemu/qemu/commit/cc1e13913916f755fd2dc5041b8d4bf25d3ea88e
  Author: yaolujing <address@hidden>
  Date:   2017-04-02 (Sun, 02 Apr 2017)

  Changed paths:
    M block/nbd.c

  Log Message:
  -----------
  nbd: fix memory leak on socket_connect failed

When TCP connection fails between nbd server and client,
the local var, sioc, memory leak.

This patch fixes the memory leak.

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


  Commit: 90c4fe5fc517a045e7a7cf2f23472e114042ca29
      
https://github.com/qemu/qemu/commit/90c4fe5fc517a045e7a7cf2f23472e114042ca29
  Author: Paolo Bonzini <address@hidden>
  Date:   2017-04-03 (Mon, 03 Apr 2017)

  Changed paths:
    M exec.c
    M include/exec/memory.h

  Log Message:
  -----------
  exec: revert MemoryRegionCache

MemoryRegionCache did not know about virtio support for IOMMUs (because the
two features were developed at the same time).  Revert MemoryRegionCache
to "normal" address_space_* operations for 2.9, as it is simpler than
undoing the virtio patches.

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


  Commit: ecbddbb106114f90008024b4e6c3ba1c38d7ca0e
      
https://github.com/qemu/qemu/commit/ecbddbb106114f90008024b4e6c3ba1c38d7ca0e
  Author: Richard W.M. Jones <address@hidden>
  Date:   2017-04-03 (Mon, 03 Apr 2017)

  Changed paths:
    M util/main-loop.c

  Log Message:
  -----------
  main-loop: Acquire main_context lock around os_host_main_loop_wait.

When running virt-rescue the serial console hangs from time to time.
Virt-rescue runs an ordinary Linux kernel "appliance", but there is
only a single idle process running inside, so the qemu main loop is
largely idle.  With virt-rescue >= 1.37 you may be able to observe the
hang by doing:

  $ virt-rescue -e ^] --scratch
  ><rescue> while true; do ls -l /usr/bin; done

The hang in virt-rescue can be resolved by pressing a key on the
serial console.

Possibly with the same root cause, we also observed hangs during very
early boot of regular Linux VMs with a serial console.  Those hangs
are extremely rare, but you may be able to observe them by running
this command on baremetal for a sufficiently long time:

  $ while libguestfs-test-tool -t 60 >& /tmp/log ; do echo -n . ; done

(Check in /tmp/log that the failure was caused by a hang during early
boot, and not some other reason)

During investigation of this bug, Paolo Bonzini wrote:

> glib is expecting QEMU to use g_main_context_acquire around accesses to
> GMainContext.  However QEMU is not doing that, instead it is taking its
> own mutex.  So we should add g_main_context_acquire and
> g_main_context_release in the two implementations of
> os_host_main_loop_wait; these should undo the effect of Frediano's
> glib patch.

This patch exactly implements Paolo's suggestion in that paragraph.

This fixes the serial console hang in my testing, across 3 different
physical machines (AMD, Intel Core i7 and Intel Xeon), over many hours
of automated testing.  I wasn't able to reproduce the early boot hangs
(but as noted above, these are extremely rare in any case).

Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1435432
Reported-by: Richard W.M. Jones <address@hidden>
Tested-by: Richard W.M. Jones <address@hidden>
Signed-off-by: Richard W.M. Jones <address@hidden>
Message-Id: <address@hidden>
[Paolo: this is actually a glib bug: recent glib versions are also
expecting g_main_context_acquire around g_poll---but that is not
documented and probably not even intended].
Signed-off-by: Paolo Bonzini <address@hidden>


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

  Changed paths:
    M block/iscsi.c
    M block/nbd.c
    M exec.c
    M hw/ipmi/isa_ipmi_bt.c
    M include/exec/memory.h
    M target/i386/helper.c
    M util/main-loop.c

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

* MemoryRegionCache revert
* glib optimization workaround
* fix "info lapic" segfault on isapc
* fix QIOChannel memory leak

# gpg: Signature made Mon 03 Apr 2017 18:17:00 BST
# gpg:                using RSA key 0xBFFBD25F78C7AE83
# 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:
  main-loop: Acquire main_context lock around os_host_main_loop_wait.
  exec: revert MemoryRegionCache
  nbd: fix memory leak on socket_connect failed
  ipmi: Fix macro issues
  target-i386: fix "info lapic" segfault on isapc
  iscsi: drop unused IscsiAIOCB.qiov field

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


Compare: https://github.com/qemu/qemu/compare/d9123d09f711...87cc4c61020a

reply via email to

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