Age | Commit message (Collapse) | Author |
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
Helps detect begin/end crossing these environments
and fix up automatically.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@533 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
\\note just before start of subsection seems to
confuse latex, resulting in incorrect text alignment.
Replace with \begin{note} \end{note}.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@532 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Document resolutions to VIRTIO-123, VIRTIO-124, VIRTIO-126 and
VIRTIO-143.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@531 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Link new conformance statements added by commit
network device: document VIRTIO_NET_F_CTRL_RX_EXTRA
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@530 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
VIRTIO-124
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@529 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Fix up multiple issues in xmit/receive sections:
- drop MAY/MUST/SHOULD outside normative statements
- spell out conformance requirements for both drivers and
devices, for xmit and receive paths
- document the missing VIRTIO_NET_HDR_F_DATA_VALID
- document handling of unrecognized flag bits so we can extend
flags in the future, similar to VIRTIO_NET_HDR_F_DATA_VALID
VIRTIO-123
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@528 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Document the new option, and also clarify behaviour
without it.
In particular, I noticed that actual field is not the
actual number of pages in the balloon as
driver might do inflate followed by deflate.
Also, device isn't always driven by interrupts,
driver can inflate/deflate in response to e.g.
memory compaction.
VIRTIO-126
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@527 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Virtio 1.0 cs02 doesn't include a modern balloon device. At some
point we'll likely define an incompatible interface with a
different ID and different semantics. But for now, it's not a
big effort to support a transitional balloon device: this has the
advantage of supporting existing drivers, transparently, as well
as transports that don't allow mixing virtio 0 and virtio 1
devices. And balloon is an easy device to test, so it's also
useful for people to test virtio core handling of transitional
devices.
Three issues with legacy hypervisors have been identified:
1. Actual value is actually used, and is necessary for management
to work. Luckily 4 byte config space writes are now atomic.
When using old guests, hypervisors can detect access to the last byte.
When using old hypervisors, drivers can use atomic 4-byte accesses.
2. Hypervisors actually didn't ignore the stats from the first
buffer supplied. This means the values there would be
incorrect until hypervisor resends the request.
Add a note suggesting hypervisors ignore the 1st buffer.
3. QEMU simply over-writes stats from each buffer it gets.
Thus if driver supplies a different subset of stats
on each request, stale values will be there.
Require drivers to supply the same subset on each
request. This also gives us a simple way to figure out
which stats are supported.
VIRTIO-143
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@526 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
document changes made by commits r520 to r523 inclusive
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@525 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
previous commit "used ring: specify legacy behaviour for len field"
to resolve VIRTIO-141 added new sections with normative
statements for legacy balloon and scsi devices. Link them from
the conformance section.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@524 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
The driver MUST examine the length written by the driver
makes no sense. length is written by the device.
VIRTIO-142
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@523 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
many hypervisors implemented len field incorrectly.
Document existing bugs in the legacy sections.
VIRTIO-141
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: 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@522 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
1) It's implied that a chain terminates with an indirect descriptor (since
VIRTIO-15) but we didn't spell out that a device MUST NOT continue it.
2) We allow [direct]->[direct]->[indirect], and qemu and bhyve both accept
it. Make it clear that this is valid, thus devices MUST handle it.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@521 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Just saying 64 bit fields may not be atomic is true, but less helpful
than it might be. Add explicit guidance about what the consequences of
non-atomicity are.
VIRTIO-140
Signed-off-by: James Bottomley <JBottomley@Odin.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@520 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Should be Michael S. Tsirkin, not Michael Tsirkin.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@519 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@518 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
acknowledge feedback by Jason Wang, add Richard Sohn who joined
the TC, sort acknowledged reviewers alphabetically.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@517 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
wording tweak in balloon.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@516 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@515 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@514 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@513 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Changelog appears within DIFaddbegin/DIFaddend,
suppress marking it as added text, that's confusing.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@512 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@511 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Add links to new conformance statements added to
resolve VIRTIO-137 (describing used ring entry len usage).
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@510 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
MUST shouldn't be used outside normative statements,
that's confusing. Replace with "has to".
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@509 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
pci spec says what width access to use for 32, 16 and 8
bit fields, but does not explicitly say what to do for
32 bit fields. As we have text that says driver must
treat 64 bit accesses as non-atomic, this seems
to imply driver should always do two 32 bit wide accesses.
Let's make this an explicit requirement, and require
devices to support this.
VIRTIO-139
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@508 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
latexdiff doesn't handle changing labels well,
causes latex unresolved reference errors.
opencode and mark up diff manually.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@507 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
virtio 1.0 has two sections titled "Non-transitional Device With
Legacy Driver" the first says devices SHOULD fail, the second
says devices MUST fail. Clearly a mistake.
Other issues: devices don't really fail - they cause drivers to
fail. second section seems to be in the wrong place, and also
have a section followed by subsection with no explanatory text in
between, which is ugly.
Finally, this text was originally ritten to handle buggy windows
drivers gracefully, but later we changed device IDs so it's not
really required there. Might be handy for some other buggy legacy
drivers, though no such drivers are known.
To fix, drop the duplicate section variant, add some explanatory
text, clarify what does "same ID" mean here, and clarify
that the work-around is only needed if a buggy driver
is known to bind to a transitional device.
VIRTIO-138
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@506 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@505 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
We said what it was for, and noted why. We didn't place any requirements
on it, nor clearly spell out the implications of its use.
This clarification comes particularly from noticing that QEMU didn't
set len correctly, and philosophising over the correct value when
an error has occurred.
(Wording precision feedback from Michael and Cornelia - Thanks!)
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@504 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@503 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@502 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@501 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
git-svn-id: https://tools.oasis-open.org/version-control/svn/virtio/branches/v1.0@500 0c8fb4dd-22a2-4bb5-bc14-6c75a5f43652
|