[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] 4a94b3: pci: fix pci_requester_id()
From: |
GitHub |
Subject: |
[Qemu-commits] [qemu/qemu] 4a94b3: pci: fix pci_requester_id() |
Date: |
Fri, 17 Jun 2016 05:00:04 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 4a94b3aa6d97dfa67a20c7a0315c9773352f0e8e
https://github.com/qemu/qemu/commit/4a94b3aa6d97dfa67a20c7a0315c9773352f0e8e
Author: Peter Xu <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M hw/i386/kvm/pci-assign.c
M hw/pci/pci.c
M include/hw/pci/pci.h
Log Message:
-----------
pci: fix pci_requester_id()
This fix SID verification failure when IOMMU IR is enabled with PCI
bridges. Existing pci_requester_id() is more like getting BDF info
only. Renaming it to pci_get_bdf(). Meanwhile, we provide the correct
implementation to get requester ID. VT-d spec 5.1.1 is a good reference
to go, though it talks only about interrupt delivery, the rule works
exactly the same for non-interrupt cases.
Currently, there are three use cases for pci_requester_id():
- PCIX status bits: here we need BDF only, not requester ID. Replacing
with pci_get_bdf().
- PCIe Error injection and MSI delivery: for both these cases, we are
looking for requester IDs. Here we should use the new impl.
To avoid a PCI walk every time we send MSI message, one requester_id
cache field is added to PCIDevice to cache the result when initialize
PCI device.
Signed-off-by: Peter Xu <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Acked-by: Michael S. Tsirkin <address@hidden>
Tested-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: a6553598be42e3be899acdb153fd615cd6c3eab8
https://github.com/qemu/qemu/commit/a6553598be42e3be899acdb153fd615cd6c3eab8
Author: Tetsuya Mukawa <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M net/vhost-user.c
Log Message:
-----------
vhost-user: add ability to know vhost-user backend disconnection
Current QEMU cannot detect vhost-user backend disconnection. The
patch adds ability to know it.
To know disconnection, add watcher to detect G_IO_HUP event. When
G_IO_HUP event is detected, the disconnected socket will be read
to cause a CHR_EVENT_CLOSED.
Signed-off-by: Tetsuya Mukawa <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Tested-by: Yuanhan Liu <address@hidden>
Reviewed-by: Yuanhan Liu <address@hidden>
Reviewed-by: Victor Kaplansky <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: aef8486ede8ba493c3e5a031a7bce1850d1ebbe4
https://github.com/qemu/qemu/commit/aef8486ede8ba493c3e5a031a7bce1850d1ebbe4
Author: Marc-André Lureau <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M tests/vhost-user-bridge.c
Log Message:
-----------
tests/vhost-user-bridge: add client mode
If -c is specified, vubr will try to connect to the socket instead of
listening for connections.
Signed-off-by: Marc-André Lureau <address@hidden>
Tested-by: Yuanhan Liu <address@hidden>
Reviewed-by: Yuanhan Liu <address@hidden>
Reviewed-by: Victor Kaplansky <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 523b018dde3b7650fe5401d0499b30cf2f117515
https://github.com/qemu/qemu/commit/523b018dde3b7650fe5401d0499b30cf2f117515
Author: Marc-André Lureau <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M tests/vhost-user-bridge.c
Log Message:
-----------
tests/vhost-user-bridge: workaround stale vring base
This patch is a similar solution to what Yuanhan Liu/Huawei Xie have
suggested for DPDK. When vubr quits (killed or crashed), a restart of
vubr would get stale vring base from QEMU. That would break the kernel
virtio net completely, making it non-work any more, unless a driver
reset is done.
So, instead of getting the stale vring base from QEMU, Huawei suggested
we could get a proper one from used->idx. This works because the queues
packets are processed in order.
Signed-off-by: Marc-André Lureau <address@hidden>
Tested-by: Yuanhan Liu <address@hidden>
Reviewed-by: Yuanhan Liu <address@hidden>
Reviewed-by: Victor Kaplansky <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 7d9d17f71e580218629a91f72eeef4db1c96b0ae
https://github.com/qemu/qemu/commit/7d9d17f71e580218629a91f72eeef4db1c96b0ae
Author: Tetsuya Mukawa <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M include/sysemu/char.h
M qemu-char.c
Log Message:
-----------
qemu-char: add qemu_chr_disconnect to close a fd accepted by listen fd
The patch introduces qemu_chr_disconnect(). The function is used for
closing a fd accepted by listen fd. Though we already have qemu_chr_delete(),
but it closes not only accepted fd but also listen fd. This new function
is used when we still want to keep listen fd.
Signed-off-by: Tetsuya Mukawa <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Tested-by: Yuanhan Liu <address@hidden>
Reviewed-by: Yuanhan Liu <address@hidden>
Reviewed-by: Victor Kaplansky <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 0d572afd5266d1d67d132d06ea45d7246bcd6105
https://github.com/qemu/qemu/commit/0d572afd5266d1d67d132d06ea45d7246bcd6105
Author: Marc-André Lureau <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M net/vhost-user.c
Log Message:
-----------
vhost-user: disconnect on start failure
If the backend failed to start (for example feature negociation failed),
do not exit, but disconnect the char device instead. Slightly more
robust for reconnect case.
Signed-off-by: Marc-André Lureau <address@hidden>
Tested-by: Yuanhan Liu <address@hidden>
Reviewed-by: Yuanhan Liu <address@hidden>
Reviewed-by: Victor Kaplansky <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 72b65f922b7b925ed67847017dcd0539e49d925f
https://github.com/qemu/qemu/commit/72b65f922b7b925ed67847017dcd0539e49d925f
Author: Marc-André Lureau <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M hw/net/vhost_net.c
Log Message:
-----------
vhost-net: do not crash if backend is not present
Do not crash when backend is not present while enabling the ring. A
following patch will save the enabled state so it can be restored once
the backend is started.
Signed-off-by: Marc-André Lureau <address@hidden>
Tested-by: Yuanhan Liu <address@hidden>
Reviewed-by: Yuanhan Liu <address@hidden>
Reviewed-by: Victor Kaplansky <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: a463215b087c41d7ca94e51aa347cde523831873
https://github.com/qemu/qemu/commit/a463215b087c41d7ca94e51aa347cde523831873
Author: Marc-André Lureau <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M hw/net/vhost_net.c
M include/net/vhost-user.h
M include/net/vhost_net.h
M net/vhost-user.c
Log Message:
-----------
vhost-net: save & restore vhost-user acked features
The initial vhost-user connection sets the features to be negotiated
with the driver. Renegotiation isn't possible without device reset.
To handle reconnection of vhost-user backend, ensure the same set of
features are provided, and reuse already acked features.
Signed-off-by: Marc-André Lureau <address@hidden>
Tested-by: Yuanhan Liu <address@hidden>
Reviewed-by: Yuanhan Liu <address@hidden>
Reviewed-by: Victor Kaplansky <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: bfc6cf31ce12649b32dae0430fcbdb456fe6faf8
https://github.com/qemu/qemu/commit/bfc6cf31ce12649b32dae0430fcbdb456fe6faf8
Author: Marc-André Lureau <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M hw/net/vhost_net.c
M include/net/net.h
Log Message:
-----------
vhost-net: save & restore vring enable state
A driver may change the vring enable state at run time but vhost-user
backend may not be present (a contrived example is when the backend is
disconnected and the device is reconfigured after driver rebinding)
Restore the vring state when the vhost-user backend is started, so it
can process the ring.
Signed-off-by: Marc-André Lureau <address@hidden>
Tested-by: Yuanhan Liu <address@hidden>
Reviewed-by: Yuanhan Liu <address@hidden>
Reviewed-by: Victor Kaplansky <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 0ee2e9daf8fd81d59f0ce67e251dfa9599252b7e
https://github.com/qemu/qemu/commit/0ee2e9daf8fd81d59f0ce67e251dfa9599252b7e
Author: Marc-André Lureau <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M tests/Makefile.include
Log Message:
-----------
tests: append i386 tests
Do not overwrite x86-64 tests, re-enable vhost-user-test.
Signed-off-by: Marc-André Lureau <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Victor Kaplansky <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 4616e3592ba62dd44d62babd84b23f84f6b33ddb
https://github.com/qemu/qemu/commit/4616e3592ba62dd44d62babd84b23f84f6b33ddb
Author: Marc-André Lureau <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M tests/vhost-user-test.c
Log Message:
-----------
test: start vhost-user reconnect test
This is a simple reconnect test, that simply checks if vhost-user
reconnection is possible and restore the state. A more complete test
would actually manipulate and check the ring contents (such extended
testing would benefit from the libvhost-user proposed in QEMU list to
avoid duplication of ring manipulations)
Signed-off-by: Marc-André Lureau <address@hidden>
Reviewed-by: Victor Kaplansky <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 97fe42f19b989ecfd0c6a23b9c09dbc7159c7602
https://github.com/qemu/qemu/commit/97fe42f19b989ecfd0c6a23b9c09dbc7159c7602
Author: Cao jin <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M hw/pci/pci.c
Log Message:
-----------
pci core: assert ENOSPC when add capability
ENOSPC is programming error, assert it for debugging.
cc: Michael S. Tsirkin <address@hidden>
cc: Marcel Apfelbaum <address@hidden>
cc: Markus Armbruster <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Cao jin <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 52ea63dea465575ccd71d52c3461b1b7d9f50ce0
https://github.com/qemu/qemu/commit/52ea63dea465575ccd71d52c3461b1b7d9f50ce0
Author: Cao jin <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M hw/net/vmxnet3.c
M hw/pci-bridge/ioh3420.c
M hw/pci-bridge/pci_bridge_dev.c
M hw/pci-bridge/xio3130_downstream.c
M hw/pci-bridge/xio3130_upstream.c
M hw/pci/msi.c
Log Message:
-----------
fix some coding style problems
It has:
1. More newlines make the code block well separated.
2. Add more comments for msi_init.
3. Fix a indentation in vmxnet3.c.
4. ioh3420 & xio3130_downstream: put PCI Express capability init function
together, make it more readable.
cc: Michael S. Tsirkin <address@hidden>
cc: Markus Armbruster <address@hidden>
cc: Marcel Apfelbaum <address@hidden>
cc: Dmitry Fleytman <address@hidden>
cc: Jason Wang <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Signed-off-by: Cao jin <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 2cbb1a6826ee651ad2bef52cbcef1427b911def2
https://github.com/qemu/qemu/commit/2cbb1a6826ee651ad2bef52cbcef1427b911def2
Author: Cao jin <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M hw/pci/msi.c
Log Message:
-----------
msi_init: change return value to 0 on success
No caller use its return value as msi capability offset, also in order
to make its return behaviour consistent with msix_init().
cc: Michael S. Tsirkin <address@hidden>
cc: Paolo Bonzini <address@hidden>
cc: Hannes Reinecke <address@hidden>
cc: Markus Armbruster <address@hidden>
cc: Marcel Apfelbaum <address@hidden>
Acked-by: Hannes Reinecke <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Cao jin <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Reviewed-by: Marcel Apfelbaum <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 874a2358307ce9d0466b0f559d33d422f9d4976d
https://github.com/qemu/qemu/commit/874a2358307ce9d0466b0f559d33d422f9d4976d
Author: Michael S. Tsirkin <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M MAINTAINERS
Log Message:
-----------
MAINTAINERS: add Marcel to PCI
Marcel is reviewing PCI patches anyway, things will
be easier if people remember to Cc him.
Cc: Marcel Apfelbaum <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Commit: 7263a903c361edd174946a4708374f5aa6c6b834
https://github.com/qemu/qemu/commit/7263a903c361edd174946a4708374f5aa6c6b834
Author: Peter Maydell <address@hidden>
Date: 2016-06-17 (Fri, 17 Jun 2016)
Changed paths:
M MAINTAINERS
M hw/i386/kvm/pci-assign.c
M hw/net/vhost_net.c
M hw/net/vmxnet3.c
M hw/pci-bridge/ioh3420.c
M hw/pci-bridge/pci_bridge_dev.c
M hw/pci-bridge/xio3130_downstream.c
M hw/pci-bridge/xio3130_upstream.c
M hw/pci/msi.c
M hw/pci/pci.c
M include/hw/pci/pci.h
M include/net/net.h
M include/net/vhost-user.h
M include/net/vhost_net.h
M include/sysemu/char.h
M net/vhost-user.c
M qemu-char.c
M tests/Makefile.include
M tests/vhost-user-bridge.c
M tests/vhost-user-test.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging
pc, pci, virtio: new features, cleanups, fixes
Beginning of reconnect support for vhost-user.
Misc cleanups and fixes.
Signed-off-by: Michael S. Tsirkin <address@hidden>
# gpg: Signature made Fri 17 Jun 2016 01:28:39 BST
# gpg: using RSA key 0x281F0DB8D28D5469
# gpg: Good signature from "Michael S. Tsirkin <address@hidden>"
# gpg: aka "Michael S. Tsirkin <address@hidden>"
# Primary key fingerprint: 0270 606B 6F3C DF3D 0B17 0970 C350 3912 AFBE 8E67
# Subkey fingerprint: 5D09 FD08 71C8 F85B 94CA 8A0D 281F 0DB8 D28D 5469
* remotes/mst/tags/for_upstream:
MAINTAINERS: add Marcel to PCI
msi_init: change return value to 0 on success
fix some coding style problems
pci core: assert ENOSPC when add capability
test: start vhost-user reconnect test
tests: append i386 tests
vhost-net: save & restore vring enable state
vhost-net: save & restore vhost-user acked features
vhost-net: do not crash if backend is not present
vhost-user: disconnect on start failure
qemu-char: add qemu_chr_disconnect to close a fd accepted by listen fd
tests/vhost-user-bridge: workaround stale vring base
tests/vhost-user-bridge: add client mode
vhost-user: add ability to know vhost-user backend disconnection
pci: fix pci_requester_id()
Signed-off-by: Peter Maydell <address@hidden>
Conflicts:
tests/Makefile.include
Compare: https://github.com/qemu/qemu/compare/585fcd4b1107...7263a903c361
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] 4a94b3: pci: fix pci_requester_id(),
GitHub <=