1. 29 3月, 2019 2 次提交
    • Y
      e1000: Delay flush queue when receive RCTL · 157628d0
      yuchenlin 提交于
      Due to too early RCT0 interrput, win10x32 may hang on booting.
      This problem can be reproduced by doing power cycle on win10x32 guest.
      In our environment, we have 10 win10x32 and stress power cycle.
      The problem will happen about 20 rounds.
      
      Below shows some log with comment:
      
      The normal case:
      
      22831@1551928392.984687:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      22831@1551928392.985655:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      22831@1551928392.985801:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: RCTL: 0, mac_reg[RCTL] = 0x0
      22831@1551928393.056710:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: ICR read: 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: RCTL: 0, mac_reg[RCTL] = 0x0
      22831@1551928393.077548:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: ICR read: 0
      e1000: set_ics 2, ICR 0, IMR 0
      e1000: set_ics 2, ICR 2, IMR 0
      e1000: RCTL: 0, mac_reg[RCTL] = 0x0
      22831@1551928393.102974:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      22831@1551928393.103267:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      e1000: RCTL: 255, mac_reg[RCTL] = 0x40002 <- win10x32 says it can handle
      RX now
      e1000: set_ics 0, ICR 2, IMR 9d <- unmask interrupt
      e1000: RCTL: 255, mac_reg[RCTL] = 0x48002
      e1000: set_ics 80, ICR 2, IMR 9d <- interrupt and work!
      ...
      
      The bad case:
      
      27744@1551930483.117766:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      27744@1551930483.118398:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: RCTL: 0, mac_reg[RCTL] = 0x0
      27744@1551930483.198063:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: ICR read: 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: RCTL: 0, mac_reg[RCTL] = 0x0
      27744@1551930483.218675:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      e1000: set_ics 0, ICR 0, IMR 0
      e1000: ICR read: 0
      e1000: set_ics 2, ICR 0, IMR 0
      e1000: set_ics 2, ICR 2, IMR 0
      e1000: RCTL: 0, mac_reg[RCTL] = 0x0
      27744@1551930483.241768:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      27744@1551930483.241979:e1000x_rx_disabled Received packet dropped
      because receive is disabled RCTL = 0
      e1000: RCTL: 255, mac_reg[RCTL] = 0x40002 <- win10x32 says it can handle
      RX now
      e1000: set_ics 80, ICR 2, IMR 0 <- flush queue (caused by setting RCTL)
      e1000: set_ics 0, ICR 82, IMR 9d <- unmask interrupt and because 0x82&0x9d
      != 0 generate interrupt, hang on here...
      
      To workaround this problem, simply delay flush queue. Also stop receiving
      when timer is going to run.
      
      Tested on CentOS, Win7SP1x64 and Win10x32.
      Signed-off-by: Nyuchenlin <yuchenlin@synology.com>
      Reviewed-by: NDmitry Fleytman <dmitry.fleytman@gmail.com>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      157628d0
    • M
      net/socket: learn to talk with a unix dgram socket · fdec16e3
      Marc-André Lureau 提交于
      -net socket has a fd argument, and may be passed pre-opened sockets.
      
      TCP sockets use framing.
      UDP sockets have datagram boundaries.
      
      When given a unix dgram socket, it will be able to read from it, but
      will attempt to send on the dgram_dst, which is unset. The other end
      will not receive the data.
      
      Let's teach -net socket to recognize a UNIX DGRAM socket, and use the
      regular send() command (without dgram_dst).
      
      This makes running slirp out-of-process possible that
      way (python pseudo-code):
      
      a, b = socket.socketpair(socket.AF_UNIX, socket.SOCK_DGRAM)
      
      subprocess.Popen('qemu -net socket,fd=%d -net user' % a.fileno(), shell=True)
      subprocess.Popen('qemu ... -net nic -net socket,fd=%d' % b.fileno(), shell=True)
      Signed-off-by: NMarc-André Lureau <marcandre.lureau@redhat.com>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      fdec16e3
  2. 28 3月, 2019 5 次提交
    • P
      Merge remote-tracking branch 'remotes/alistair/tags/pull-device-tree-20190327' into staging · a04d91c7
      Peter Maydell 提交于
      Device Tree Pull Request for 4.0
      
      A single patch updating the MAINTAINERS file for 4.0.
      
      # gpg: Signature made Wed 27 Mar 2019 17:02:00 GMT
      # gpg:                using RSA key F6C4AC46D4934868D3B8CE8F21E10D29DF977054
      # gpg: Good signature from "Alistair Francis <alistair@alistair23.me>" [full]
      # Primary key fingerprint: F6C4 AC46 D493 4868 D3B8  CE8F 21E1 0D29 DF97 7054
      
      * remotes/alistair/tags/pull-device-tree-20190327:
        MAINTAINERS: Update the device tree maintainers
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      a04d91c7
    • P
      Merge remote-tracking branch 'remotes/otubo/tags/pull-seccomp-20190327' into staging · 12f067cc
      Peter Maydell 提交于
      pull-seccomp-20190327
      
      # gpg: Signature made Wed 27 Mar 2019 12:12:39 GMT
      # gpg:                using RSA key DF32E7C0F0FFF9A2
      # gpg: Good signature from "Eduardo Otubo (Senior Software Engineer) <otubo@redhat.com>" [full]
      # Primary key fingerprint: D67E 1B50 9374 86B4 0723  DBAB DF32 E7C0 F0FF F9A2
      
      * remotes/otubo/tags/pull-seccomp-20190327:
        seccomp: report more useful errors from seccomp
        seccomp: don't kill process for resource control syscalls
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      12f067cc
    • P
      Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging · 84bdc58c
      Peter Maydell 提交于
      * Kconfig improvements (msi_nonbroken, imply for default PCI devices)
      * intel-iommu: sharing passthrough FlatViews (Peter)
      * Fix for SEV with VFIO (Brijesh)
      * Allow compilation without CONFIG_PARALLEL (Thomas)
      
      # gpg: Signature made Thu 21 Mar 2019 16:42:24 GMT
      # gpg:                using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
      # gpg:                issuer "pbonzini@redhat.com"
      # gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full]
      # gpg:                 aka "Paolo Bonzini <pbonzini@redhat.com>" [full]
      # 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: (23 commits)
        virtio-vga: only enable for specific boards
        config-all-devices.mak: rebuild on reconfigure
        minikconf: fix parser typo
        intel-iommu: optimize nodmar memory regions
        test-announce-self: convert to qgraph
        hw/alpha/Kconfig: DP264 hardware requires e1000 network card
        hw/hppa/Kconfig: Dino board requires e1000 network card
        hw/sh4/Kconfig: r2d machine requires the rtl8139 network card
        hw/ppc/Kconfig: e500 based machines require virtio-net-pci device
        hw/ppc/Kconfig: Bamboo machine requires e1000 network card
        hw/mips/Kconfig: Fulong 2e board requires ati-vga/rtl8139 PCI devices
        hw/mips/Kconfig: Malta machine requires the pcnet network card
        hw/i386/Kconfig: enable devices that can be created by default
        hw/isa/Kconfig: PIIX4 southbridge requires USB UHCI
        hw/isa/Kconfig: i82378 SuperIO requires PC speaker device
        prep: do not select I82374
        hw/i386/Kconfig: PC uses I8257, not I82374
        hw/char/parallel: Make it possible to compile also without CONFIG_PARALLEL
        target/i386: sev: Do not pin the ram device memory region
        memory: Fix the memory region type assignment order
        ...
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      
      # Conflicts:
      #	hw/rdma/Makefile.objs
      #	hw/riscv/sifive_plic.c
      84bdc58c
    • P
      Merge remote-tracking branch 'remotes/xtensa/tags/20190326-xtensa' into staging · 2fc8d6f8
      Peter Maydell 提交于
      target/xtensa fixes for v4.0:
      
      - fix translation of FLIX bundles with multiple references to the same
        register;
      - don't announce exit simcall;
      - clean up tests/tcg/xtensa.
      
      # gpg: Signature made Tue 26 Mar 2019 17:58:59 GMT
      # gpg:                using RSA key 2B67854B98E5327DCDEB17D851F9CC91F83FA044
      # gpg:                issuer "jcmvbkbc@gmail.com"
      # gpg: Good signature from "Max Filippov <filippov@cadence.com>" [unknown]
      # gpg:                 aka "Max Filippov <max.filippov@cogentembedded.com>" [full]
      # gpg:                 aka "Max Filippov <jcmvbkbc@gmail.com>" [full]
      # Primary key fingerprint: 2B67 854B 98E5 327D CDEB  17D8 51F9 CC91 F83F A044
      
      * remotes/xtensa/tags/20190326-xtensa:
        tests/tcg/xtensa: clean up test set
        target/xtensa: don't announce exit simcall
        target/xtensa: fix break_dependency for repeated resources
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      2fc8d6f8
    • A
      MAINTAINERS: Update the device tree maintainers · c3c962c1
      Alistair Francis 提交于
      Remove Alex as a Device Tree maintainer as requested by him. Add myself
      as a maintainer to avoid it being orphaned. Also add David as a
      Reviewer (R) as he is the libfdt and DTC maintainer.
      Signed-off-by: NAlistair Francis <alistair.francis@wdc.com>
      Reviewed-by: NPhilippe Mathieu-Daudé <f4bug@amsat.org>
      Reviewed-by: NAlexander Graf <agraf@csgraf.de>
      Acked-by: NDavid Gibson <david@gibson.dropbear.id.au>
      c3c962c1
  3. 27 3月, 2019 3 次提交
  4. 26 3月, 2019 30 次提交