1. 05 5月, 2017 2 次提交
  2. 26 4月, 2017 2 次提交
  3. 22 4月, 2017 1 次提交
    • P
      xen: use libxendevice model to restrict operations · 1c599472
      Paul Durrant 提交于
      This patch adds a command-line option (-xen-domid-restrict) which will
      use the new libxendevicemodel API to restrict devicemodel [1] operations
      to the specified domid. (Such operations are not applicable to the xenpv
      machine type).
      
      This patch also adds a tracepoint to allow successful enabling of the
      restriction to be monitored.
      
      [1] I.e. operations issued by libxendevicemodel. Operation issued by other
          xen libraries (e.g. libxenforeignmemory) are currently still unrestricted
          but this will be rectified by subsequent patches.
      Signed-off-by: NPaul Durrant <paul.durrant@citrix.com>
      Reviewed-by: NStefano Stabellini <sstabellini@kernel.org>
      1c599472
  4. 21 4月, 2017 1 次提交
  5. 14 3月, 2017 1 次提交
  6. 07 3月, 2017 1 次提交
    • M
      block: Initial implementation of -blockdev · 42e5f393
      Markus Armbruster 提交于
      The new command line option -blockdev works like QMP command
      blockdev-add.
      
      The option argument may be given in JSON syntax, exactly as in QMP.
      Example usage:
      
          -blockdev '{"node-name": "foo", "driver": "raw", "file": {"driver": "file", "filename": "foo.img"} }'
      
      The JSON argument doesn't exactly blend into the existing option
      syntax, so the traditional KEY=VALUE,... syntax is also supported,
      using dotted keys to do the nesting:
      
          -blockdev node-name=foo,driver=raw,file.driver=file,file.filename=foo.img
      
      This does not yet support lists, but that will be addressed shortly.
      
      Note that calling qmp_blockdev_add() (say via qmp_marshal_block_add())
      right away would crash.  We need to stash the configuration for later
      instead.  This is crudely done, and bypasses QemuOpts, even though
      storing configuration is what QemuOpts is for.  Need to revamp option
      infrastructure to support QAPI types like BlockdevOptions.
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Message-Id: <1488317230-26248-22-git-send-email-armbru@redhat.com>
      42e5f393
  7. 03 3月, 2017 1 次提交
  8. 28 2月, 2017 2 次提交
  9. 24 2月, 2017 1 次提交
  10. 21 2月, 2017 2 次提交
  11. 20 2月, 2017 1 次提交
  12. 16 2月, 2017 1 次提交
  13. 10 2月, 2017 1 次提交
    • D
      ui: refactor code for populating SocketAddress from vnc_display_open · 275e0d61
      Daniel P. Berrange 提交于
      The code which interprets the CLI args to populate the SocketAddress
      objects for plain & websockets VNC is quite complex already and will
      need further enhancements shortly. Refactor it into separate methods
      to avoid vnc_display_open getting even larger. As a side effect of
      the refactoring, it is now possible to specify a listen address for
      the websocket server explicitly. e.g,
      
        -vnc localhost:5900,websockets=0.0.0.0:8080
      
      will listen on localhost for the plain VNC server, but expose the
      websockets VNC server on the public interface. This refactoring
      also removes the restriction that prevents enabling websockets
      when the plain VNC server is listening on a UNIX socket.
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Message-id: 20170203120649.15637-5-berrange@redhat.com
      
      [ kraxel: squashed clang build fix ]
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      275e0d61
  14. 28 1月, 2017 3 次提交
  15. 25 1月, 2017 5 次提交
  16. 24 1月, 2017 1 次提交
  17. 20 1月, 2017 1 次提交
  18. 17 1月, 2017 1 次提交
  19. 06 12月, 2016 1 次提交
  20. 15 11月, 2016 1 次提交
    • M
      block/curl: Drop TFTP "support" · 23dce387
      Max Reitz 提交于
      Because TFTP does not support byte ranges, it was never usable with our
      curl block driver. Since apparently nobody has ever complained loudly
      enough for someone to take care of the issue until now, it seems
      reasonable to assume that nobody has ever actually used it.
      
      Therefore, it should be safe to just drop it from curl's protocol list.
      
      [Jeff Cody: Below is additional summary pulled, with some rewording,
                  from followup emails between Max and Markus, to explain what
                  worked and what didn't]
      
      TFTP would sometimes work, to a limited extent, for images <= the curl
      "readahead" size, so long as reads started at offset zero.  By default,
      that readahead size is 256KB.
      
      Reads starting at a non-zero offset would also have returned data from a
      zero offset.  It can become more complicated still, with mixed reads at
      zero offset and non-zero offsets, due to data buffering.
      
      In short, TFTP could only have worked before in very specific scenarios
      with unrealistic expectations and constraints.
      Signed-off-by: NMax Reitz <mreitz@redhat.com>
      Reviewed-by: NKevin Wolf <kwolf@redhat.com>
      Reviewed-by: NJeff Cody <jcody@redhat.com>
      Message-id: 20161102175539.4375-4-mreitz@redhat.com
      Signed-off-by: NJeff Cody <jcody@redhat.com>
      23dce387
  21. 31 10月, 2016 1 次提交
  22. 28 10月, 2016 3 次提交
  23. 08 10月, 2016 1 次提交
  24. 27 9月, 2016 3 次提交
    • A
      tap: Allow specifying a bridge · 584613ea
      Alexey Kardashevskiy 提交于
      The tap backend is already using qemu-bridge-helper to attach tap
      interface to a bridge but (unlike the bridge backend) it always uses
      the default bridge name - br0.
      
      This adds a "br" property support to the tap backend.
      Signed-off-by: NAlexey Kardashevskiy <aik@ozlabs.ru>
      Reviewed-by: NGreg Kurz <groug@kaod.org>
      Tested-by: NGreg Kurz <groug@kaod.org>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      584613ea
    • Z
      filter-rewriter: introduce filter-rewriter initialization · e6eee8ab
      Zhang Chen 提交于
      Filter-rewriter is a part of COLO project.
      It will rewrite some of secondary packet to make
      secondary guest's tcp connection established successfully.
      In this module we will rewrite tcp packet's ack to the secondary
      from primary,and rewrite tcp packet's seq to the primary from
      secondary.
      
      usage:
      
      colo secondary:
      -object filter-redirector,id=f1,netdev=hn0,queue=tx,indev=red0
      -object filter-redirector,id=f2,netdev=hn0,queue=rx,outdev=red1
      -object filter-rewriter,id=rew0,netdev=hn0,queue=all
      Signed-off-by: NZhang Chen <zhangchen.fnst@cn.fujitsu.com>
      Signed-off-by: NLi Zhijian <lizhijian@cn.fujitsu.com>
      Signed-off-by: NWen Congyang <wency@cn.fujitsu.com>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      e6eee8ab
    • Z
      colo-compare: introduce colo compare initialization · 7dce4e6f
      Zhang Chen 提交于
      This a COLO net ascii figure:
      
       Primary qemu                                                           Secondary qemu
      +--------------------------------------------------------------+       +----------------------------------------------------------------+
      | +----------------------------------------------------------+ |       |  +-----------------------------------------------------------+ |
      | |                                                          | |       |  |                                                           | |
      | |                        guest                             | |       |  |                        guest                              | |
      | |                                                          | |       |  |                                                           | |
      | +-------^--------------------------+-----------------------+ |       |  +---------------------+--------+----------------------------+ |
      |         |                          |                         |       |                        ^        |                              |
      |         |                          |                         |       |                        |        |                              |
      |         |  +------------------------------------------------------+  |                        |        |                              |
      |netfilter|  |                       |                         |    |  |   netfilter            |        |                              |
      | +----------+ +----------------------------+                  |    |  |  +-----------------------------------------------------------+ |
      | |       |  |                       |      |        out       |    |  |  |                     |        |  filter excute order       | |
      | |       |  |          +-----------------------------+        |    |  |  |                     |        | +------------------->      | |
      | |       |  |          |            |      |         |        |    |  |  |                     |        |   TCP                      | |
      | | +-----+--+-+  +-----v----+ +-----v----+ |pri +----+----+sec|    |  |  | +------------+  +---+----+---v+rewriter++  +------------+ | |
      | | |          |  |          | |          | |in  |         |in |    |  |  | |            |  |        |              |  |            | | |
      | | |  filter  |  |  filter  | |  filter  +------>  colo   <------+ +-------->  filter   +--> adjust |   adjust     +-->   filter   | | |
      | | |  mirror  |  |redirector| |redirector| |    | compare |   |  |    |  | | redirector |  | ack    |   seq        |  | redirector | | |
      | | |          |  |          | |          | |    |         |   |  |    |  | |            |  |        |              |  |            | | |
      | | +----^-----+  +----+-----+ +----------+ |    +---------+   |  |    |  | +------------+  +--------+--------------+  +---+--------+ | |
      | |      |   tx        |   rx           rx  |                  |  |    |  |            tx                        all       |  rx      | |
      | |      |             |                    |                  |  |    |  +-----------------------------------------------------------+ |
      | |      |             +--------------+     |                  |  |    |                                                   |            |
      | |      |   filter excute order      |     |                  |  |    |                                                   |            |
      | |      |  +---------------->        |     |                  |  +--------------------------------------------------------+            |
      | +-----------------------------------------+                  |       |                                                                |
      |        |                            |                        |       |                                                                |
      +--------------------------------------------------------------+       +----------------------------------------------------------------+
               |guest receive               | guest send
               |                            |
      +--------+----------------------------v------------------------+
      |                                                              |                          NOTE: filter direction is rx/tx/all
      |                         tap                                  |                          rx:receive packets sent to the netdev
      |                                                              |                          tx:receive packets sent by the netdev
      +--------------------------------------------------------------+
      
      In COLO-compare, we do packet comparing job.
      Packets coming from the primary char indev will be sent to outdev.
      Packets coming from the secondary char dev will be dropped after comparing.
      colo-comapre need two input chardev and one output chardev:
      primary_in=chardev1-id (source: primary send packet)
      secondary_in=chardev2-id (source: secondary send packet)
      outdev=chardev3-id
      
      usage:
      
      primary:
      -netdev tap,id=hn0,vhost=off,script=/etc/qemu-ifup,downscript=/etc/qemu-ifdown
      -device e1000,id=e0,netdev=hn0,mac=52:a4:00:12:78:66
      -chardev socket,id=mirror0,host=3.3.3.3,port=9003,server,nowait
      -chardev socket,id=compare1,host=3.3.3.3,port=9004,server,nowait
      -chardev socket,id=compare0,host=3.3.3.3,port=9001,server,nowait
      -chardev socket,id=compare0-0,host=3.3.3.3,port=9001
      -chardev socket,id=compare_out,host=3.3.3.3,port=9005,server,nowait
      -chardev socket,id=compare_out0,host=3.3.3.3,port=9005
      -object filter-mirror,id=m0,netdev=hn0,queue=tx,outdev=mirror0
      -object filter-redirector,netdev=hn0,id=redire0,queue=rx,indev=compare_out
      -object filter-redirector,netdev=hn0,id=redire1,queue=rx,outdev=compare0
      -object colo-compare,id=comp0,primary_in=compare0-0,secondary_in=compare1,outdev=compare_out0
      
      secondary:
      -netdev tap,id=hn0,vhost=off,script=/etc/qemu-ifup,down script=/etc/qemu-ifdown
      -device e1000,netdev=hn0,mac=52:a4:00:12:78:66
      -chardev socket,id=red0,host=3.3.3.3,port=9003
      -chardev socket,id=red1,host=3.3.3.3,port=9004
      -object filter-redirector,id=f1,netdev=hn0,queue=tx,indev=red0
      -object filter-redirector,id=f2,netdev=hn0,queue=rx,outdev=red1
      Signed-off-by: NZhang Chen <zhangchen.fnst@cn.fujitsu.com>
      Signed-off-by: NLi Zhijian <lizhijian@cn.fujitsu.com>
      Signed-off-by: NWen Congyang <wency@cn.fujitsu.com>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      7dce4e6f
  25. 14 9月, 2016 2 次提交