1. 09 1月, 2017 22 次提交
  2. 06 1月, 2017 5 次提交
    • P
      Merge remote-tracking branch 'remotes/gonglei/tags/cryptodev-next-20161224' into staging · ffe22bf5
      Peter Maydell 提交于
      cryptodev patches
      
      - add xts mode support
      - add 3DES algorithm support
      - other trivial fixes
      
      # gpg: Signature made Sat 24 Dec 2016 05:56:44 GMT
      # gpg:                using RSA key 0x2ED7FDE9063C864D
      # gpg: Good signature from "Gonglei <arei.gonglei@huawei.com>"
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: 3EF1 8E53 3459 E6D1 963A  3C05 2ED7 FDE9 063C 864D
      
      * remotes/gonglei/tags/cryptodev-next-20161224:
        cryptodev: add 3des-ede support
        cryptodev: remove single-DES support in cryptodev
        cryptodev: add xts(aes) support
        cryptodev: fix the check of aes algorithm
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      ffe22bf5
    • P
      Merge remote-tracking branch 'remotes/jasowang/tags/net-pull-request' into staging · a01b1e9a
      Peter Maydell 提交于
      # gpg: Signature made Fri 06 Jan 2017 02:55:49 GMT
      # gpg:                using RSA key 0xEF04965B398D6211
      # gpg: Good signature from "Jason Wang (Jason Wang on RedHat) <jasowang@redhat.com>"
      # gpg: WARNING: This key is not certified with sufficiently trusted signatures!
      # gpg:          It is not certain that the signature belongs to the owner.
      # Primary key fingerprint: 215D 46F4 8246 689E C77F  3562 EF04 965B 398D 6211
      
      * remotes/jasowang/tags/net-pull-request:
        fsl_etsec: Fix Tx BD ring wrapping handling
        rtl8139: correctly handle PHY reset
        record/replay: add network support
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      a01b1e9a
    • A
      fsl_etsec: Fix Tx BD ring wrapping handling · 7e354ed4
      Andrey Smirnov 提交于
      Current code that handles Tx buffer desciprtor ring scanning employs the
      following algorithm:
      
      	1. Restore current buffer descriptor pointer from TBPTRn
      
      	2. Process current descriptor
      
      	3. If current descriptor has BD_WRAP flag set set current
      	   descriptor pointer to start of the descriptor ring
      
      	4. If current descriptor points to start of the ring exit the
      	   loop, otherwise increment current descriptor pointer and go
      	   to #2
      
      	5. Store current descriptor in TBPTRn
      
      The way the code is implemented results in buffer descriptor ring being
      scanned starting at offset/descriptor #0. While covering 99% of the
      cases, this algorithm becomes problematic for a number of edge cases.
      
      Consider the following scenario: guest OS driver initializes descriptor
      ring to N individual descriptors and starts sending data out. Depending
      on the volume of traffic and probably guest OS driver implementation it
      is possible that an edge case where a packet, spread across 2
      descriptors is placed in descriptors N - 1 and 0 in that order(it is
      easy to imagine similar examples involving more than 2 descriptors).
      
      What happens then is aforementioned algorithm starts at descriptor 0,
      sees a descriptor marked as BD_LAST, which it happily sends out as a
      separate packet(very much malformed at this point) then the iteration
      continues and the first part of the original packet is tacked to the
      next transmission which ends up being bogus as well.
      
      This behvaiour can be pretty reliably observed when scp'ing data from a
      guest OS via TAP interface for files larger than 160K (every time for
      700K+).
      
      This patch changes the scanning algorithm to do the following:
      
      	1. Restore "current" buffer descriptor pointer from
      	   TBPTRn
      
      	2. If "current" descriptor does not have BD_TX_READY set, goto #6
      
      	3. Process current descriptor
      
      	4. If "current" descriptor has BD_WRAP flag set "current"
      	   descriptor pointer to start of the descriptor ring otherwise
      	   set increment "current" by the size of one descriptor
      
      	5. Goto #1
      
      	6. Save "current" buffer descriptor in TBPTRn
      
      This way we preserve the information about which descriptor was
      processed last and always start where we left off avoiding the original
      problem. On top of that, judging by the following excerpt from
      MPC8548ERM (p. 14-48):
      
      "... When the end of the TxBD ring is reached, eTSEC initializes TBPTRn
      to the value in the corresponding TBASEn. The TBPTR register is
      internally written by the eTSEC’s DMA controller during
      transmission. The pointer increments by eight (bytes) each time a
      descriptor is closed successfully by the eTSEC..."
      
      revised algorithm might also a more correct way of emulating this aspect
      of eTSEC peripheral.
      
      Cc: Alexander Graf <agraf@suse.de>
      Cc: Scott Wood <scottwood@freescale.com>
      Cc: Jason Wang <jasowang@redhat.com>
      Cc: qemu-devel@nongnu.org
      Signed-off-by: NAndrey Smirnov <andrew.smirnov@gmail.com>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      7e354ed4
    • H
      rtl8139: correctly handle PHY reset · 30a3e701
      Hervé Poussineau 提交于
      According to datasheet:
      "[Bit 15 of Basic Mode Control Register] sets the status and control registers
      of the PHY (register 0062-0074) in a default state. This bit is self-clearing.
      1 = software reset; 0 = normal operation."
      
      This fixes the netcard detection failure in Minoca OS.
      Signed-off-by: NHervé Poussineau <hpoussin@reactos.org>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      30a3e701
    • P
      record/replay: add network support · 646c5478
      Pavel Dovgalyuk 提交于
      This patch adds support of recording and replaying network packets in
      irount rr mode.
      
      Record and replay for network interactions is performed with the network filter.
      Each backend must have its own instance of the replay filter as follows:
       -netdev user,id=net1 -device rtl8139,netdev=net1
       -object filter-replay,id=replay,netdev=net1
      
      Replay network filter is used to record and replay network packets. While
      recording the virtual machine this filter puts all packets coming from
      the outer world into the log. In replay mode packets from the log are
      injected into the network device. All interactions with network backend
      in replay mode are disabled.
      
      v5 changes:
       - using iov_to_buf function instead of loop
      Signed-off-by: NPavel Dovgalyuk <pavel.dovgaluk@ispras.ru>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      646c5478
  3. 05 1月, 2017 3 次提交
    • P
      Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging · e92fbc75
      Peter Maydell 提交于
      # gpg: Signature made Wed 04 Jan 2017 13:29:09 GMT
      # gpg:                using RSA key 0x9CA4ABB381AB73C8
      # gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>"
      # gpg:                 aka "Stefan Hajnoczi <stefanha@gmail.com>"
      # Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35  775A 9CA4 ABB3 81AB 73C8
      
      * remotes/stefanha/tags/block-pull-request:
        iothread: add poll-grow and poll-shrink parameters
        aio: self-tune polling time
        virtio: disable virtqueue notifications during polling
        aio: add .io_poll_begin/end() callbacks
        virtio: turn vq->notification into a nested counter
        virtio-scsi: suppress virtqueue kick during processing
        virtio-blk: suppress virtqueue kick during processing
        iothread: add polling parameters
        linux-aio: poll ring for completions
        virtio: poll virtqueues for new buffers
        aio: add polling mode to AioContext
        aio: add AioPollFn and io_poll() interface
        aio: add flag to skip fds to aio_dispatch()
        HACKING: document #include order
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      e92fbc75
    • P
      Merge remote-tracking branch 'remotes/gkurz/tags/for-upstream' into staging · 9c904a75
      Peter Maydell 提交于
      - transport specific callbacks (for Xen)
      - fix crash (2.8 regression)
      - 9p functional tests
      
      # gpg: Signature made Tue 03 Jan 2017 17:30:58 GMT
      # gpg:                using DSA key 0x02FC3AEB0101DBC2
      # gpg: Good signature from "Greg Kurz <groug@kaod.org>"
      # gpg:                 aka "Greg Kurz <groug@free.fr>"
      # gpg:                 aka "Greg Kurz <gkurz@fr.ibm.com>"
      # gpg:                 aka "Greg Kurz <gkurz@linux.vnet.ibm.com>"
      # gpg:                 aka "Gregory Kurz (Groug) <groug@free.fr>"
      # gpg:                 aka "Gregory Kurz (Cimai Technology) <gkurz@cimai.com>"
      # gpg:                 aka "Gregory Kurz (Meiosys Technology) <gkurz@meiosys.com>"
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: 2BD4 3B44 535E C0A7 9894  DBA2 02FC 3AEB 0101 DBC2
      
      * remotes/gkurz/tags/for-upstream:
        tests: virtio-9p: ".." cannot be used to walk out of the shared directory
        tests: virtio-9p: no slash in path elements during walk
        tests: virtio-9p: add walk operation test
        tests: virtio-9p: add attach operation test
        tests: virtio-9p: add version operation test
        9pfs: fix P9_NOTAG and P9_NOFID macros
        tests: virtio-9p: code refactoring
        tests: virtio-9p: rename PCI configuration test
        9pfs: fix crash when fsdev is missing
        9pfs: introduce init_out/in_iov_from_pdu
        9pfs: call v9fs_init_qiov_from_pdu before v9fs_pack
        9pfs: introduce transport specific callbacks
        9pfs: move pdus to V9fsState
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      9c904a75
    • P
      Merge remote-tracking branch 'remotes/kraxel/tags/pull-vga-20170103-1' into staging · 12597061
      Peter Maydell 提交于
      virtio-gpu: misc bugfixes.
      
      # gpg: Signature made Tue 03 Jan 2017 14:48:04 GMT
      # gpg:                using RSA key 0x4CB6D8EED3E87138
      # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
      # gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>"
      # gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
      # Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138
      
      * remotes/kraxel/tags/pull-vga-20170103-1:
        virtio-gpu: fix memory leak in resource attach backing
        virtio-gpu-3d: fix memory leak in resource attach backing
        virtio-gpu: call cleanup mapping function in resource destroy
        virtio-gpu: track and limit host memory allocations
        display: virtio-gpu-3d: check virgl capabilities max_size
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      12597061
  4. 04 1月, 2017 10 次提交