summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-09-08Merge https://github.com/oasis-tcs/virtio-spec into trunkMichael S. Tsirkin
This merges in the OASIS boilerplate files in preparation to moving virtio spec development to git, as approved at: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3120 Files added: CONTRIBUTING.md LICENSE.md README.md TODO: tweak boilerplate files as appropriate/needed. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2017-09-07typo, caseRobin Cover
2017-09-07create boilerplate LICENSE textrobincover
2017-09-07Create CONTRIBUTING.mdrobincover
2017-09-07update README with noilerplateRobin Cover
2017-09-07Initial commitrobincover
2017-01-10context: Document VIRTIO_F_IOMMU_PLATFORM reserved feature bit (33)mstsirkin
On most virtio systems, physical addresses are provided from the driver to the device and subsequently used to access memory directly. However, some systems feature an IOMMU that complicates things slightly: - The IOMMU might require configuration for DMA to work at all. Once configured, the driver must pass bus addresses to the device, which are then translated by the IOMMU into physical addresses in memory. - The IOMMU might be bypassed by virtio DMA. In this case, physical addresses must still be provided to the device by the driver, even though an IOMMU appears to be present. This has been solved by the addition of a new reserved feature bit, VIRTIO_F_IOMMU_PLATFORM, to describe the two cases above. Legacy systems will not negotiate the feature, and therefore continue to operate directly on physical addresses. VIRTIO-154 Cc: Michael S. Tsirkin <mst@redhat.com> Cc: Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Will Deacon <will.deacon@arm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/trunk@587 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-10-11git-svn: instructions for faster initmstsirkin
initial svn clone takes ages. A faster way is to copy history from a git mirror. Document this. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/trunk@586 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-10-11virtio-net: add Max MTU configuration fieldmstsirkin
It is helpful for a host to indicate it's MTU to be set on guest NICs other than the assumed 1500 byte value. This helps in situations where the host network is using Jumbo Frames, or aiding in PMTU discovery by configuring a homogenous network. It is also helpful for sizing receive buffers correctly. The change adds a new field to configuration area of network devices. It will be used to pass a maximum MTU from the device to the driver. This will be used by the driver as a maximum value for packet sizes during transmission, without segmentation offloading. In addition, in order to support backward and forward compatibility, we introduce a new feature bit called VIRTIO_NET_F_MTU. VIRTIO-152 Signed-off-by: Aaron Conole <aconole@redhat.com> Cc: Victor Kaplansky <victork@redhat.com> Reviewed-by: Hannes Reiencke <hare@suse.de> Acked-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com> Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/trunk@585 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-10-10content: Reserve virtio device ID for pstoremstsirkin
This patch just reserve next available device ID for pstore device type. The device specification for pstore will come later. VIRTIO-150 Signed-off-by: Namhyung Kim <namhyung@kernel.org> Message-Id: <1468941217-12904-1-git-send-email-namhyung@gmail.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/trunk@583 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-10-10content: reserve virtio device ID for sdmmstsirkin
VIRTIO-149 Signed-off-by: Christian Pinto <c.pinto@virtualopensystems.com> Signed-off-by: Baptiste Reynal <b.reynal@virtualopensystems.com> Message-Id: <1467111824-11548-2-git-send-email-c.pinto@virtualopensystems.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/trunk@582 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-10-10virtio: reserve device id for virtio cryptomstsirkin
Reserve a device ID for virtio crypto device to avoid collisions with other new virtio devices. Because 19 had been reserved for virtio socket device, I'd like to reserve 20 for crypto device. VIRTIO-148 Suggested-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Gonglei <arei.gonglei@huawei.com> Message-Id: <1460685060-5904-1-git-send-email-arei.gonglei@huawei.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/trunk@581 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-10-10vsock: reserve device IDmstsirkin
Add a device ID for the Socket device. The draft specification is currently under review but it helps to reserve the ID to avoid collisions with other new virtio devices. VIRTIO-147 Suggested-by: Ian Campbell <ian.campbell@docker.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Message-Id: <1458729661-7514-1-git-send-email-stefanha@redhat.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/trunk@580 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-10-10ccw: add CCW_CMD_READ_STATUSmstsirkin
ccw currently allows the driver to update the status via the CCW_CMD_WRITE_STATUS command; however, it does not allow the driver to retrieve the current status at the device, which is needed to properly support DEVICE_NEEDS_RESET. Therefore, provide a new command CCW_CMD_READ_STATUS allowing the driver to retrieve the device status. Provide this command when revision 2 has been negotiated. VIRTIO-117 Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Message-Id: <1445243513-2263-2-git-send-email-cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/trunk@579 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-07-22Merge remote-tracking branch 'origin/v1.0'mstsirkin
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/trunk@572 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-07-22REVISION: update for cs04mstsirkin
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@570 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16title: drop Rusty's email from chair/editor listmstsirkin
I kept Rusty's name in the acknowledgements section, but listing him as Chair/Editor does not help since the email listed bounces. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@569 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16acknowledgements: acknowledge review by Kevin Lomstsirkin
Cc: Kevin Lo <kevlo@kevlo.org> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@568 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16acknowledgements: update affiliation for Thomas Huthmstsirkin
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@567 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16makediff: suppress diff for chater namesmstsirkin
Temporary hack since we have nameref pointing to a chapter name, and that conflicts with latexdiff. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@566 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16cl: list changes since CSPRD05mstsirkin
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@565 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16makediff: cherry pick file name changemstsirkin
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@563 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16fixupdiff: actually apply the DIFadd/DIFdel hackmstsirkin
looks like recent changes made it inactive: must change $line, not $_. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@562 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16virtio header: fix diff generationmstsirkin
add old cross reference as well as an chapter parameter to avoid latexdiff errors when chapter is renamed. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@561 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16fixupdiff: update for latest perlmstsirkin
Escape {} in regexes to avoid warnings in latest perl. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@560 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16init: sort status bitsmstsirkin
Status bit order is inconsistent: they are neither in increasing order nor in the order they are likely to be used. The second approach seems more useful since there aren't that many bits, so the numerical order does not help much. A typical order of use would be: ACKNOWLEDGE DRIVER then either FAILED or FEATURES_OK then either FAILED or DRIVER_OK then DEVICE_NEEDS_RESET (if device detects an error) Sort the bits accordingly. Reported-by: Kevin Lo <kevlo@kevlo.org> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@559 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16virtio-ring.h -> virtio-queue.hmstsirkin
Since vring* and VRING* have been replaced with virtq* and VIRTQ* respectively, rename the header virtio_ring.h to virtio_queue.h. Suggested-by: Kevin Lo <kevlo@kevlo.org> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@558 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16Revert "headerfile rename virtio_ring to virtio queue"mstsirkin
This immediately reverts the previous commit, solely for the benefit of latexdiff. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@557 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16headerfile: rename virtio_ring to virtio queuemstsirkin
Done as a separate commit for benefit of latexdiff. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@556 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16virtio header: tweak change motivationmstsirkin
The changes are not just to remove Linux assumptions, we have also renamed ring->queue. Tweak the header description accordingly. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@555 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16virtio-net: fix inconsistent legacy header sizemstsirkin
Current text says: The legacy driver only presented num_buffers in the struct virtio_net_hdr when VIRTIO_NET_F_MRG_RXBUF was not negotiated; Should be: "... was negotiated ..." instead of "... was not negotiated ..." To be consistent with the following: without that feature the structure was 2 bytes shorter. Reported-by: Thomas Huth <thuth@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@554 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16REVISION: update for csprd05mstsirkin
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@553 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2016-02-16title: fix previous link to cs03mstsirkin
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@552 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-21cl: document resolution for VIRTIO-146.mstsirkin
add advice on transition from earlier drafts. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@551 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-21cl: document resolution for VIRTIO-145.mstsirkin
pci: clarify configuration access capability rules Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@550 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-21cl: document resolution for VIRTIO-144mstsirkin
virtio-blk: restore VIRTIO_BLK_F_FLUSH and VIRTIO_BLK_F_CONFIG_WCE Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@549 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-21intro: add advice on transition from legacy interfacesmstsirkin
Reading legacy chapters gives a hint about what changed, let's help readers discover this useful shortcut. This resolves VIRTIO-146. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com> Accepted by electronic ballot: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=2866 git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@548 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-21pci: clarify configuration access capability rulesmstsirkin
The point of the configuration access capability is to enable access to other capabilities. The intent never was to allow writes to a random place within device BARs. Limiting drivers simplifies devices - and devices can always add another capability if drivers ever want to access some other range. This resolves VIRTIO-145. Cc: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Accepted by electronic ballot: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=2865 git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@547 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-21virtio-blk: restore VIRTIO_BLK_F_FLUSH and VIRTIO_BLK_F_CONFIG_WCEmstsirkin
VIRTIO_BLK_F_CONFIG_WCE is important in order to achieve good performance (up to 2x, though more realistically +30-40%) in latency-bound workloads. However, it was removed by mistake together with VIRTIO_BLK_F_FLUSH. In addition, even removing VIRTIO_BLK_F_FLUSH was probably not a great idea, because it simplifies simple drivers (e.g. firmware) that are okay with a writethrough cache but still need data to persist after power loss. What really should have been removed is just the possibility that devices not propose VIRTIO_BLK_F_FLUSH, but even that only deserves a "SHOULD" in the new world of conformance statements. Restore these, with the following changes: * clarify and use conformance statements in order to define writeback and writethrough caching according to what is commonly done by high-end storage. * clarify (with conformance statements) the influence of the VIRTIO_BLK_F_FLUSH feature on caching and how to proceed if only one of VIRTIO_BLK_F_FLUSH and VIRTIO_BLK_F_CONFIG_WCE is negotiated. * strengthen the requirement for persisting writes to MUST after a VIRTIO_BLK_T_FLUSH request (and in other cases too involving the new features). The suggested behavior upon feature negotiation is okay for the Linux implementation of virtio1, even after the implementation is modified to support the two new features. This fixes VIRTIO-144. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Accepted by electronic ballot: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=2864 Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@546 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-21Revert: makediff: cleanup using begingroup/endgroupmstsirkin
This reverts commit commit ef519a86f046d1be22f82f32d845653a850c21dd Author: mstsirkin <mstsirkin@0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652> Date: Thu Jun 26 16:50:13 2014 +0000 makediff: cleanup using begingroup/endgroup This seemed like a good idea originally: replace perl hacks with tex hacks. However adding \begingroup and \endgroup within macros used by latex-diff breaks its assumption that these are low level tex and can be used in arbitrary situations, e.g. cross the boundaries of environments, use mis-matching begin and end instructions (DIFaddbegin with DIFaddendFL), etc. Let's go back to the original work-around: commit b665b3165b454b98c782617e37a128b53b56c89c Author: mstsirkin <mstsirkin@0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652> Date: Thu Jun 26 12:34:38 2014 +0000 work around xetex bug Too many \color directives produce corrupted output and this warning: WARNING ** Color stack overflow. Just ignore. Use script to reduce # of these directives. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@545 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-11cl: list changes 540-542mstsirkin
all of them non-material Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@544 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-11cl: clear it out for cs03mstsirkin
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@543 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-11virtio-blk: flush: Fix driver vs. device typomstsirkin
This is a simple non-material change. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@542 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-11virtio-blk: fix typo in legacy framing requirements sectionmstsirkin
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@541 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-10-11virtqueues: fix trivial typomstsirkin
Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@540 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-08-02Merge remote-tracking branch 'origin/v1.0'mstsirkin
Update trunk to virtio-v1.0-cs03 git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/trunk@539 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-08-02admin: set date and revision for cs03mstsirkin
Approved Aug 2: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=2843 Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@537 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-05-21title: update previous version linkmstsirkin
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@536 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-05-21fixupdiff: better diff for lstlistingmstsirkin
Actually strike out deleted text. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@535 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
2015-05-21fixupdiff.pl: more work-arounds for latexdiffmstsirkin
work around more latexdiff issues: - force FL style within headers - fix beginFL ending with end and vice versa across begin/end of enum or itemize Signed-off-by: Michael S. Tsirkin <mst@redhat.com> git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@534 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652