Skip to content
Snippets Groups Projects
  1. Mar 09, 2020
  2. Mar 08, 2020
  3. Mar 06, 2020
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging · 67f17e23
      Peter Maydell authored
      
      Block layer patches:
      
      - Add qemu-storage-daemon (still experimental)
      - rbd: Add support for ceph namespaces
      - Fix bdrv_reopen() with backing file in different AioContext
      - qcow2: Fix read-write reopen with persistent dirty bitmaps
      - qcow2: Fix alloc_cluster_abort() for pre-existing clusters
      
      # gpg: Signature made Fri 06 Mar 2020 17:12:31 GMT
      # gpg:                using RSA key 7F09B272C88F2FD6
      # gpg: Good signature from "Kevin Wolf <kwolf@redhat.com>" [full]
      # Primary key fingerprint: DC3D EB15 9A9A F95D 3D74  56FE 7F09 B272 C88F 2FD6
      
      * remotes/kevin/tags/for-upstream: (29 commits)
        block: bdrv_reopen() with backing file in different AioContext
        iotests: Refactor blockdev-reopen test for iothreads
        block/rbd: Add support for ceph namespaces
        qemu-storage-daemon: Add --monitor option
        monitor: Add allow_hmp parameter to monitor_init()
        hmp: Fail gracefully if chardev is already in use
        qmp: Fail gracefully if chardev is already in use
        monitor: Create QAPIfied monitor_init()
        qapi: Create 'pragma' module
        stubs: Update monitor stubs for qemu-storage-daemon
        qemu-storage-daemon: Add --chardev option
        qemu-storage-daemon: Add main loop
        qemu-storage-daemon: Add --export option
        blockdev-nbd: Boxed argument type for nbd-server-add
        qemu-storage-daemon: Add --nbd-server option
        qemu-storage-daemon: Add --object option
        qapi: Flatten object-add
        qemu-storage-daemon: Add --blockdev option
        block: Move sysemu QMP commands to QAPI block module
        block: Move common QMP commands to block-core QAPI module
        ...
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      67f17e23
    • Kevin Wolf's avatar
      block: bdrv_reopen() with backing file in different AioContext · 1de6b45f
      Kevin Wolf authored
      
      This patch allows bdrv_reopen() (and therefore the x-blockdev-reopen QMP
      command) to attach a node as the new backing file even if the node is in
      a different AioContext than the parent if one of both nodes can be moved
      to the AioContext of the other node.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Tested-by: default avatarPeter Krempa <pkrempa@redhat.com>
      Message-Id: <20200306141413.30705-3-kwolf@redhat.com>
      Reviewed-by: default avatarAlberto Garcia <berto@igalia.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      1de6b45f
    • Kevin Wolf's avatar
      iotests: Refactor blockdev-reopen test for iothreads · 97518e11
      Kevin Wolf authored
      
      We'll want to test more than one successful case in the future, so
      prepare the test for that by a refactoring that runs each scenario in a
      separate VM.
      
      test_iothreads_switch_{backing,overlay} currently produce errors, but
      these are cases that should actually work, by switching either the
      backing file node or the overlay node to the AioContext of the other
      node.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Tested-by: default avatarPeter Krempa <pkrempa@redhat.com>
      Message-Id: <20200306141413.30705-2-kwolf@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      97518e11
    • Florian Florensa's avatar
      block/rbd: Add support for ceph namespaces · 19ae9ae0
      Florian Florensa authored
      
      Starting from ceph Nautilus, RBD has support for namespaces, allowing
      for finer grain ACLs on images inside a pool, and tenant isolation.
      
      In the rbd cli tool documentation, the new image-spec and snap-spec are :
       - [pool-name/[namespace-name/]]image-name
       - [pool-name/[namespace-name/]]image-name@snap-name
      
      When using an non namespace's enabled qemu, it complains about not
      finding the image called namespace-name/image-name, thus we only need to
      parse the image once again to find if there is a '/' in its name, and if
      there is, use what is before it as the name of the namespace to later
      pass it to rados_ioctx_set_namespace.
      rados_ioctx_set_namespace if called with en empty string or a null
      pointer as the namespace parameters pretty much does nothing, as it then
      defaults to the default namespace.
      
      The namespace is extracted inside qemu_rbd_parse_filename, stored in the
      qdict, and used in qemu_rbd_connect to make it work with both qemu-img,
      and qemu itself.
      
      Signed-off-by: default avatarFlorian Florensa <fflorensa@online.net>
      Message-Id: <20200110111513.321728-2-fflorensa@online.net>
      Reviewed-by: default avatarJason Dillaman <dillaman@redhat.com>
      Reviewed-by: default avatarStefano Garzarella <sgarzare@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      19ae9ae0
    • Kevin Wolf's avatar
      qemu-storage-daemon: Add --monitor option · 2af282ec
      Kevin Wolf authored
      
      This adds and parses the --monitor option, so that a QMP monitor can be
      used in the storage daemon. The monitor offers commands defined in the
      QAPI schema at storage-daemon/qapi/qapi-schema.json.
      
      The --monitor options currently allows to create multiple monitors with
      the same ID. This part of the interface is considered unstable. We will
      reject such configurations as soon as we have a design for the monitor
      subsystem to perform these checks. (In the system emulator, we depend on
      QemuOpts rejecting duplicate IDs.)
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-21-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      2af282ec
    • Kevin Wolf's avatar
      monitor: Add allow_hmp parameter to monitor_init() · a2f411c4
      Kevin Wolf authored
      
      Add a new parameter allow_hmp to monitor_init() so that the storage
      daemon can disable HMP.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-20-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      a2f411c4
    • Kevin Wolf's avatar
      hmp: Fail gracefully if chardev is already in use · 8e9119a8
      Kevin Wolf authored
      
      Trying to attach a HMP monitor to a chardev that is already in use
      results in a crash because monitor_init_hmp() passes &error_abort to
      qemu_chr_fe_init():
      
      $ ./x86_64-softmmu/qemu-system-x86_64 --chardev stdio,id=foo --mon foo --mon foo
      QEMU 4.2.50 monitor - type 'help' for more information
      (qemu) Unexpected error in qemu_chr_fe_init() at chardev/char-fe.c:220:
      qemu-system-x86_64: --mon foo: Device 'foo' is in use
      Abgebrochen (Speicherabzug geschrieben)
      
      Fix this by allowing monitor_init_hmp() to return an error and passing
      any error in qemu_chr_fe_init() to its caller instead of aborting.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-19-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      8e9119a8
    • Kevin Wolf's avatar
      qmp: Fail gracefully if chardev is already in use · f27a9bb3
      Kevin Wolf authored
      
      Trying to attach a QMP monitor to a chardev that is already in use
      results in a crash because monitor_init_qmp() passes &error_abort to
      qemu_chr_fe_init():
      
      $ ./x86_64-softmmu/qemu-system-x86_64 --chardev stdio,id=foo --mon foo,mode=control --mon foo,mode=control
      Unexpected error in qemu_chr_fe_init() at chardev/char-fe.c:220:
      qemu-system-x86_64: --mon foo,mode=control: Device 'foo' is in use
      Abgebrochen (Speicherabzug geschrieben)
      
      Fix this by allowing monitor_init_qmp() to return an error and passing
      any error in qemu_chr_fe_init() to its caller instead of aborting.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-18-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      f27a9bb3
    • Kevin Wolf's avatar
      monitor: Create QAPIfied monitor_init() · f2098725
      Kevin Wolf authored
      
      This adds a new QAPI-based monitor_init() function. The existing
      monitor_init_opts() is rewritten to simply put its QemuOpts parameter
      into a visitor and pass the resulting QAPI object to monitor_init().
      
      This will cause some change in those error messages for the monitor
      options in the system emulator that are now generated by the visitor
      rather than explicitly checked in monitor_init_opts().
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-17-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      f2098725
    • Kevin Wolf's avatar
      qapi: Create 'pragma' module · 9a9f9099
      Kevin Wolf authored
      
      We want to share the whitelists between the system emulator schema and
      the storage daemon schema, so move all the pragmas from the main schema
      file into a separate file that can be included from both.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-16-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      9a9f9099
    • Kevin Wolf's avatar
      stubs: Update monitor stubs for qemu-storage-daemon · 6ede81d5
      Kevin Wolf authored
      
      Before we can add the monitor to qemu-storage-daemon, we need to add a
      stubs for monitor_fdsets_cleanup().
      
      We also need to make sure that stubs that are actually implemented in
      the monitor core aren't linked to qemu-storage-daemon so that we don't
      get linker errors because of duplicate symbols. This is achieved by
      moving the stubs in question to a new file stubs/monitor-core.c.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-15-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      6ede81d5
    • Kevin Wolf's avatar
      qemu-storage-daemon: Add --chardev option · 5e6911cf
      Kevin Wolf authored
      
      This adds a --chardev option to the storage daemon that works the same
      as the -chardev option of the system emulator.
      
      The syntax of the --chardev option is still considered unstable. We want
      to QAPIfy it and will potentially make changes to its syntax while
      converting it. However, we haven't decided yet on a design for the
      QAPIfication, so QemuOpts will have to do for now.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-14-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      5e6911cf
    • Kevin Wolf's avatar
      qemu-storage-daemon: Add main loop · aa70683d
      Kevin Wolf authored
      
      Instead of exiting after processing all command line options, start a
      main loop and keep processing events until exit is requested with a
      signal (e.g. SIGINT).
      
      Now qemu-storage-daemon can be used as an alternative for qemu-nbd that
      provides a few features that were previously only available from QMP,
      such as access to options only available with -blockdev and the socket
      types 'vsock' and 'fd'.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-13-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      aa70683d
    • Kevin Wolf's avatar
      qemu-storage-daemon: Add --export option · 39411120
      Kevin Wolf authored
      
      Add a --export option to qemu-storage-daemon to export a block node. For
      now, only NBD exports are implemented. Apart from the 'type' option
      (which is the implied key), it maps the arguments for nbd-server-add to
      the command line. Example:
      
          --export nbd,device=disk,name=test-export,writable=on
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-12-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      39411120
    • Kevin Wolf's avatar
      blockdev-nbd: Boxed argument type for nbd-server-add · c62d24e9
      Kevin Wolf authored
      
      Move the arguments of nbd-server-add to a new struct BlockExportNbd and
      convert the command to 'boxed': true. This makes it easier to share code
      with the storage daemon.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-11-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      c62d24e9
    • Kevin Wolf's avatar
      qemu-storage-daemon: Add --nbd-server option · eed8b691
      Kevin Wolf authored
      
      Add a --nbd-server option to qemu-storage-daemon to start the built-in
      NBD server right away. It maps the arguments for nbd-server-start to the
      command line, with the exception that it uses SocketAddress instead of
      SocketAddressLegacy: New interfaces shouldn't use legacy types, and the
      additional nesting would be nasty on the command line.
      
      Example (only with required options):
      
          --nbd-server addr.type=inet,addr.host=localhost,addr.port=10809
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-10-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      eed8b691
    • Kevin Wolf's avatar
      qemu-storage-daemon: Add --object option · d6da78b5
      Kevin Wolf authored
      
      Add a command line option to create user-creatable QOM objects.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-9-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      d6da78b5
    • Kevin Wolf's avatar
      qapi: Flatten object-add · 5f07c4d6
      Kevin Wolf authored
      
      Mapping object-add to the command line as is doesn't result in nice
      syntax because of the nesting introduced with 'props'. This becomes
      nicer and more consistent with device_add and netdev_add when we accept
      properties for the object on the top level instead.
      
      'props' is still accepted after this patch, but marked as deprecated.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-8-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      5f07c4d6
    • Kevin Wolf's avatar
      qemu-storage-daemon: Add --blockdev option · 14837c64
      Kevin Wolf authored
      
      This adds a --blockdev option to the storage daemon that works the same
      as the -blockdev option of the system emulator.
      
      In order to be able to link with blockdev.o, we also need to change
      stream.o from common-obj to block-obj, which is where all other block
      jobs already are.
      
      In contrast to the system emulator, qemu-storage-daemon options will be
      processed in the order they are given. The user needs to take care to
      refer to other objects only after defining them.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-7-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      14837c64
    • Kevin Wolf's avatar
      block: Move sysemu QMP commands to QAPI block module · 5a16818b
      Kevin Wolf authored
      
      QMP commands that are related to the system emulator and don't make
      sense in the context of tools such as qemu-storage-daemon should live in
      qapi/block.json rather than qapi/block-core.json. Move them there.
      
      The associated data types are actually also used in code shared with the
      tools, so they stay in block-core.json.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-6-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      5a16818b
    • Kevin Wolf's avatar
      block: Move common QMP commands to block-core QAPI module · b3cf1ec0
      Kevin Wolf authored
      
      block-core is for everything that isn't related to the system emulator.
      Internal snapshots, the NBD server and quorum events make sense in the
      tools, too, so move them to block-core.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-5-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      b3cf1ec0
    • Kevin Wolf's avatar
      block: Move system emulator QMP commands to block/qapi-sysemu.c · 12c929bc
      Kevin Wolf authored
      
      These commands make only sense for system emulators and their
      implementations call functions that don't exist in tools (e.g. to
      resolve qdev IDs). Move them out so that blockdev.c can be linked to
      qemu-storage-daemon.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-4-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      12c929bc
    • Kevin Wolf's avatar
      stubs: Add arch_type · 5964ed56
      Kevin Wolf authored
      
      blockdev.c uses the arch_type constant, so before we can use the file in
      tools (i.e. outside of the system emulator), we need to add a stub for
      it. A new QEMU_ARCH_NONE is introduced for this case.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-3-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      5964ed56
    • Kevin Wolf's avatar
      qemu-storage-daemon: Add barebone tool · f353415f
      Kevin Wolf authored
      
      This adds a new binary qemu-storage-daemon that doesn't yet do more than
      some typical initialisation for tools and parsing the basic command
      options --version, --help and --trace.
      
      Even though this doesn't add any options yet that create things (like
      --object or --blockdev), already document that we're planning to process
      them in the order they are given on the command line rather than trying
      (and failing, like vl.c) to resolve dependencies between options
      automatically.
      
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      Message-Id: <20200224143008.13362-2-kwolf@redhat.com>
      Acked-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      f353415f
    • Peter Krempa's avatar
      block/qcow2: Move bitmap reopen into bdrv_reopen_commit_post · 65eb7c85
      Peter Krempa authored
      
      The bitmap code requires writing the 'file' child when the qcow2 driver
      is reopened in read-write mode.
      
      If the 'file' child is being reopened due to a permissions change, the
      modification is commited yet when qcow2_reopen_commit is called. This
      means that any attempt to write the 'file' child will end with EBADFD
      as the original fd was already closed.
      
      Moving bitmap reopening to the new callback which is called after
      permission modifications are commited fixes this as the file descriptor
      will be replaced with the correct one.
      
      The above problem manifests itself when reopening 'qcow2' format layer
      which uses a 'file-posix' file child which was opened with the
      'auto-read-only' property set.
      
      Signed-off-by: default avatarPeter Krempa <pkrempa@redhat.com>
      Message-Id: <db118dbafe1955afbc0a18d3dd220931074ce349.1582893284.git.pkrempa@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      65eb7c85
    • Peter Krempa's avatar
      block: Introduce 'bdrv_reopen_commit_post' step · 17e1e2be
      Peter Krempa authored
      
      Add another step in the reopen process where driver can execute code
      after permission changes are comitted.
      
      Signed-off-by: default avatarPeter Krempa <pkrempa@redhat.com>
      Message-Id: <adc02cf591c3cb34e98e33518eb1c540a0f27db1.1582893284.git.pkrempa@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      17e1e2be
    • Hanna Reitz's avatar
      block: Fix leak in bdrv_create_file_fallback() · eeea1faa
      Hanna Reitz authored
      
      @options is leaked by the first two return statements in this function.
      
      Note that blk_new_open() takes the reference to @options even on
      failure, so all we need to do to fix the leak is to move the QDict
      allocation down to where we actually need it.
      
      Reported-by: Coverity (CID 1419884)
      Fixes: fd17146c
             ("block: Generic file creation fallback")
      Signed-off-by: default avatarMax Reitz <mreitz@redhat.com>
      Message-Id: <20200225155618.133412-1-mreitz@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      eeea1faa
    • Hanna Reitz's avatar
      iotests/026: Test EIO on allocation in a data-file · 81311255
      Hanna Reitz authored
      
      Test what happens when writing data to an external data file, where the
      write requires an L2 entry to be allocated, but the data write fails.
      
      Signed-off-by: default avatarMax Reitz <mreitz@redhat.com>
      Message-Id: <20200225143130.111267-4-mreitz@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      81311255
    • Hanna Reitz's avatar
      iotests/026: Test EIO on preallocated zero cluster · 31ab00f3
      Hanna Reitz authored
      
      Test what happens when writing data to a preallocated zero cluster, but
      the data write fails.
      
      Signed-off-by: default avatarMax Reitz <mreitz@redhat.com>
      Message-Id: <20200225143130.111267-3-mreitz@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      31ab00f3
    • Hanna Reitz's avatar
      qcow2: Fix alloc_cluster_abort() for pre-existing clusters · 3ede935f
      Hanna Reitz authored
      
      handle_alloc() reuses preallocated zero clusters.  If anything goes
      wrong during the data write, we do not change their L2 entry, so we
      must not let qcow2_alloc_cluster_abort() free them.
      
      Fixes: 8b24cd14
      Cc: qemu-stable@nongnu.org
      Signed-off-by: default avatarMax Reitz <mreitz@redhat.com>
      Message-Id: <20200225143130.111267-2-mreitz@redhat.com>
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      3ede935f
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging · c2058285
      Peter Maydell authored
      
      Pull request
      
      These patches would have gone through Thomas Huth but he is away on leave.
      
      # gpg: Signature made Fri 06 Mar 2020 14:23:11 GMT
      # gpg:                using RSA key 8695A8BFD3F97CDAAC35775A9CA4ABB381AB73C8
      # gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>" [full]
      # gpg:                 aka "Stefan Hajnoczi <stefanha@gmail.com>" [full]
      # Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35  775A 9CA4 ABB3 81AB 73C8
      
      * remotes/stefanha/tags/block-pull-request:
        tests: Fix a bug with count variables
        qtest: fix fuzzer-related 80-char limit violations
        fuzz: fix style/typos in linker-script comments
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      c2058285
    • Peter Maydell's avatar
      Merge remote-tracking branch 'remotes/pmaydell/tags/pull-docs-20200306' into staging · f4c4357f
      Peter Maydell authored
      
      docs:
       * Convert qemu-doc from Texinfo to rST
      
      # gpg: Signature made Fri 06 Mar 2020 11:08:15 GMT
      # gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE
      # gpg:                issuer "peter.maydell@linaro.org"
      # gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>" [ultimate]
      # gpg:                 aka "Peter Maydell <pmaydell@gmail.com>" [ultimate]
      # gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>" [ultimate]
      # Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE
      
      * remotes/pmaydell/tags/pull-docs-20200306: (33 commits)
        *.hx: Remove all the STEXI/ETEXI blocks
        docs: Remove old texinfo sources
        docs: Stop building qemu-doc
        ui/cocoa.m: Update documentation file and pathname
        docs: Generate qemu.1 manpage with Sphinx
        docs: Split out sections for the manpage into .rst.inc files
        qemu-options.hx: Fix up the autogenerated rST
        qemu-options.hx: Add rST documentation fragments
        scripts/hxtool-conv: Archive script used in qemu-options.hx conversion
        docs: Roll -prom-env and -g target-specific info into qemu-options.hx
        docs: Roll semihosting option information into qemu-options.hx
        doc/scripts/hxtool.py: Strip trailing ':' from DEFHEADING/ARCHHEADING
        hmp-commands-info.hx: Add rST documentation fragments
        hmp-commands.hx: Add rST documentation fragments
        docs/system: convert Texinfo documentation to rST
        docs/system: convert the documentation of deprecated features to rST.
        docs/system: convert managed startup to rST.
        docs/system: Convert security.texi to rST format
        docs/system: Convert qemu-cpu-models.texi to rST
        docs: Create defs.rst.inc as a place to define substitutions
        ...
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      f4c4357f
    • Peter Maydell's avatar
      *.hx: Remove all the STEXI/ETEXI blocks · 29f9dff7
      Peter Maydell authored
      
      We no longer generate texinfo from the hxtool input files,
      so delete all the STEXI/ETEXI blocks.
      
      This commit was created using the following Perl one-liner:
        perl -i -n -e '$suppress = 1,next if /^STEXI/;$suppress=0,next if /^ETEXI/; print if !$suppress;' *.hx
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      29f9dff7
Loading