qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 5b9b49: docker: change Fedora base image to f


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 5b9b49: docker: change Fedora base image to fedora:27
Date: Thu, 08 Feb 2018 08:18:08 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 5b9b49d7bd3e0da13e8f6d58578443a11817f56e
      
https://github.com/qemu/qemu/commit/5b9b49d7bd3e0da13e8f6d58578443a11817f56e
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M tests/docker/dockerfiles/fedora.docker

  Log Message:
  -----------
  docker: change Fedora base image to fedora:27

Using "fedora:latest" makes behavior different depending on when you
actually pulled the image from the docker repository.  In my case,
the supposedly "latest" image was a Fedora 25 download from 8 months
ago, and the new "test-debug" test was failing.

Use "27" to improve reproducibility and make it clear when the image
is obsolete.

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


  Commit: 439b6e5efcd79effc5199cba533fe4b28d75e0f6
      
https://github.com/qemu/qemu/commit/439b6e5efcd79effc5199cba533fe4b28d75e0f6
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M tests/test-coroutine.c

  Log Message:
  -----------
  test-coroutine: add simple CoMutex test

In preparation for adding a similar test using QemuLockable, add a very
simple testcase that has two interleaved calls to lock and unlock.

Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>


  Commit: e70372fcaffc99444edce400a5178cb196cddaf7
      
https://github.com/qemu/qemu/commit/e70372fcaffc99444edce400a5178cb196cddaf7
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M include/qemu/compiler.h
    M include/qemu/coroutine.h
    A include/qemu/lockable.h
    M include/qemu/thread.h
    M include/qemu/typedefs.h
    M tests/test-coroutine.c

  Log Message:
  -----------
  lockable: add QemuLockable

QemuLockable is a polymorphic lock type that takes an object and
knows which function to use for locking and unlocking.  The
implementation could use C11 _Generic, but since the support is
not very widespread I am instead using __builtin_choose_expr and
__builtin_types_compatible_p, which are already used by
include/qemu/atomic.h.

QemuLockable can be used to implement lock guards, or to pass around
a lock in such a way that a function can release it and re-acquire it.
The next patch will do this for CoQueue.

Signed-off-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Richard Henderson <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>


  Commit: 1a957cf9c4637abe4b7d67a91312a2565306641e
      
https://github.com/qemu/qemu/commit/1a957cf9c4637abe4b7d67a91312a2565306641e
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M include/qemu/coroutine.h
    M util/qemu-coroutine-lock.c

  Log Message:
  -----------
  coroutine-lock: convert CoQueue to use QemuLockable

There are cases in which a queued coroutine must be restarted from
non-coroutine context (with qemu_co_enter_next).  In this cases,
qemu_co_enter_next also needs to be thread-safe, but it cannot use
a CoMutex and so cannot qemu_co_queue_wait.  Use QemuLockable so
that the CoQueue can interchangeably use CoMutex or QemuMutex.

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


  Commit: 5261dd7b0106a88c9b323607136b1dfa1d7db689
      
https://github.com/qemu/qemu/commit/5261dd7b0106a88c9b323607136b1dfa1d7db689
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M fsdev/qemu-fsdev-throttle.c
    M include/qemu/coroutine.h
    M util/qemu-coroutine-lock.c

  Log Message:
  -----------
  coroutine-lock: make qemu_co_enter_next thread-safe

qemu_co_queue_next does not need to release and re-acquire the mutex,
because the queued coroutine does not run immediately.  However, this
does not hold for qemu_co_enter_next.  Now that qemu_co_queue_wait
can synchronize (via QemuLockable) with code that is not running in
coroutine context, it's important that code using qemu_co_enter_next
can easily use a standardized locking idiom.

First of all, qemu_co_enter_next must use aio_co_wake to restart the
coroutine.  Second, the function gains a second argument, a QemuLockable*,
and the comments of qemu_co_queue_next and qemu_co_queue_restart_all
are adjusted to clarify the difference.

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


  Commit: 709f213214609b693857ec988b7411126d615871
      
https://github.com/qemu/qemu/commit/709f213214609b693857ec988b7411126d615871
  Author: Paolo Bonzini <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M block/curl.c

  Log Message:
  -----------
  curl: convert to CoQueue

Now that CoQueues can use a QemuMutex for thread-safety, there is no
need for curl to roll its own coroutine queue.  Coroutines can be
placed directly on the queue instead of using a list of CURLAIOCBs.

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


  Commit: a37eaa53f9fefba9dd938371cbe3b5db22d8b787
      
https://github.com/qemu/qemu/commit/a37eaa53f9fefba9dd938371cbe3b5db22d8b787
  Author: Fam Zheng <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M stubs/Makefile.objs
    A stubs/ram-block.c

  Log Message:
  -----------
  stubs: Add stubs for ram block API

These functions will be wanted by block-obj-y but the actual definition
is in obj-y, so stub them to keep the linker happy.

Signed-off-by: Fam Zheng <address@hidden>
Acked-by: Paolo Bonzini <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>


  Commit: 418026ca43bc2626db092d7558258f9594366f28
      
https://github.com/qemu/qemu/commit/418026ca43bc2626db092d7558258f9594366f28
  Author: Fam Zheng <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    A include/qemu/vfio-helpers.h
    M util/Makefile.objs
    M util/trace-events
    A util/vfio-helpers.c

  Log Message:
  -----------
  util: Introduce vfio helpers

This is a library to manage the host vfio interface, which could be used
to implement userspace device driver code in QEMU such as NVMe or net
controllers.

Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>


  Commit: bdd6a90a9e5fe22201dce84aea60ac08197e2c63
      
https://github.com/qemu/qemu/commit/bdd6a90a9e5fe22201dce84aea60ac08197e2c63
  Author: Fam Zheng <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M MAINTAINERS
    M block/Makefile.objs
    A block/nvme.c
    M block/trace-events

  Log Message:
  -----------
  block: Add VFIO based NVMe driver

This is a new protocol driver that exclusively opens a host NVMe
controller through VFIO. It achieves better latency than linux-aio by
completely bypassing host kernel vfs/block layer.

    $rw-$bs-$iodepth  linux-aio     nvme://
    ----------------------------------------
    randread-4k-1     10.5k         21.6k
    randread-512k-1   745           1591
    randwrite-4k-1    30.7k         37.0k
    randwrite-512k-1  1945          1980

    (unit: IOPS)

The driver also integrates with the polling mechanism of iothread.

This patch is co-authored by Paolo and me.

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


  Commit: 23d0ba9319f182e258f480bafb7de9f79fb6e0e9
      
https://github.com/qemu/qemu/commit/23d0ba9319f182e258f480bafb7de9f79fb6e0e9
  Author: Fam Zheng <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M block/block-backend.c
    M block/io.c
    M include/block/block.h
    M include/block/block_int.h
    M include/sysemu/block-backend.h

  Log Message:
  -----------
  block: Introduce buf register API

Allow block driver to map and unmap a buffer for later I/O, as a performance
hint.

Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>


  Commit: 9ed616129ec6fa2a3011d324b2eb19f91cfb8547
      
https://github.com/qemu/qemu/commit/9ed616129ec6fa2a3011d324b2eb19f91cfb8547
  Author: Fam Zheng <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M block/nvme.c

  Log Message:
  -----------
  block/nvme: Implement .bdrv_(un)register_buf

Forward these two calls to the IOVA manager.

Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>


  Commit: 79d465839f6be12d614ee2bdf3514c5d645116ff
      
https://github.com/qemu/qemu/commit/79d465839f6be12d614ee2bdf3514c5d645116ff
  Author: Fam Zheng <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M qemu-img.c

  Log Message:
  -----------
  qemu-img: Map bench buffer

Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>


  Commit: a3d9a352d4899a2f3567ae923069ee4a0959c0f4
      
https://github.com/qemu/qemu/commit/a3d9a352d4899a2f3567ae923069ee4a0959c0f4
  Author: Fam Zheng <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M block/nvme.c
    M hw/block/nvme.h
    A include/block/nvme.h

  Log Message:
  -----------
  block: Move NVMe constants to a separate header

Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>


  Commit: e86de5e4740b45fb73401fec8b87f63ce5775297
      
https://github.com/qemu/qemu/commit/e86de5e4740b45fb73401fec8b87f63ce5775297
  Author: Fam Zheng <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M docs/qemu-block-drivers.texi
    M qemu-doc.texi

  Log Message:
  -----------
  docs: Add section for NVMe VFIO driver

Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>


  Commit: d87ee3d70fc54c4de007bbf94068a35987bc833d
      
https://github.com/qemu/qemu/commit/d87ee3d70fc54c4de007bbf94068a35987bc833d
  Author: Fam Zheng <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M qapi/block-core.json

  Log Message:
  -----------
  qapi: Add NVMe driver options to the schema

Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>


  Commit: 4eb995603479f0f7aff14b518f8ada16fe694ca7
      
https://github.com/qemu/qemu/commit/4eb995603479f0f7aff14b518f8ada16fe694ca7
  Author: Fam Zheng <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    A docs/devel/testing.rst
    M tests/vm/README

  Log Message:
  -----------
  docs: Add docs/devel/testing.rst

To make our efforts on QEMU testing easier to consume by contributors,
let's add a document. For example, Patchew reports build errors on
patches that should be relatively easy to reproduce with a few steps, and
it is much nicer if there is such a documentation that it can refer to.

This focuses on how to run existing tests and how to write new test
cases, without going into the frameworks themselves.

The VM based testing section is moved from tests/vm/README which now
is a single line pointing to the new doc.

Signed-off-by: Fam Zheng <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>


  Commit: 008a51bbb343972dd8cf09126da8c3b87f4e1c96
      
https://github.com/qemu/qemu/commit/008a51bbb343972dd8cf09126da8c3b87f4e1c96
  Author: Peter Maydell <address@hidden>
  Date:   2018-02-08 (Thu, 08 Feb 2018)

  Changed paths:
    M MAINTAINERS
    M block/Makefile.objs
    M block/block-backend.c
    M block/curl.c
    M block/io.c
    A block/nvme.c
    M block/trace-events
    A docs/devel/testing.rst
    M docs/qemu-block-drivers.texi
    M fsdev/qemu-fsdev-throttle.c
    M hw/block/nvme.h
    M include/block/block.h
    M include/block/block_int.h
    A include/block/nvme.h
    M include/qemu/compiler.h
    M include/qemu/coroutine.h
    A include/qemu/lockable.h
    M include/qemu/thread.h
    M include/qemu/typedefs.h
    A include/qemu/vfio-helpers.h
    M include/sysemu/block-backend.h
    M qapi/block-core.json
    M qemu-doc.texi
    M qemu-img.c
    M stubs/Makefile.objs
    A stubs/ram-block.c
    M tests/docker/dockerfiles/fedora.docker
    M tests/test-coroutine.c
    M tests/vm/README
    M util/Makefile.objs
    M util/qemu-coroutine-lock.c
    M util/trace-events
    A util/vfio-helpers.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/famz/tags/staging-pull-request' into 
staging

# gpg: Signature made Thu 08 Feb 2018 01:29:22 GMT
# gpg:                using RSA key CA35624C6A9171C6
# gpg: Good signature from "Fam Zheng <address@hidden>"
# Primary key fingerprint: 5003 7CB7 9706 0F76 F021  AD56 CA35 624C 6A91 71C6

* remotes/famz/tags/staging-pull-request:
  docs: Add docs/devel/testing.rst
  qapi: Add NVMe driver options to the schema
  docs: Add section for NVMe VFIO driver
  block: Move NVMe constants to a separate header
  qemu-img: Map bench buffer
  block/nvme: Implement .bdrv_(un)register_buf
  block: Introduce buf register API
  block: Add VFIO based NVMe driver
  util: Introduce vfio helpers
  stubs: Add stubs for ram block API
  curl: convert to CoQueue
  coroutine-lock: make qemu_co_enter_next thread-safe
  coroutine-lock: convert CoQueue to use QemuLockable
  lockable: add QemuLockable
  test-coroutine: add simple CoMutex test
  docker: change Fedora base image to fedora:27

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


Compare: https://github.com/qemu/qemu/compare/b256b89c63c1...008a51bbb343

reply via email to

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