Jason Wang
2012-Mar-20 06:20 UTC
[PATCH] virtio-spec: clarify ro/rw bits and updating rule of virtio-net status field
This patch clarifies VIRTIO_NET_S_LINK_UP as a read-only bit and VIRTIO_NET_S_ANNOUNCE as a read-writable bit. Also introduce the write 1 to clear semantics for all read-writable bits of config status field. This could help to reduce the config status field updating race between host and guest and also simplify the implementation. Signed-off-by: Jason Wang <jasowang at redhat.com> --- virtio-0.9.4.lyx | 23 +++++++++++++++++++++-- 1 files changed, 21 insertions(+), 2 deletions(-) diff --git a/virtio-0.9.4.lyx b/virtio-0.9.4.lyx index 6c7bab1..614ab55 100644 --- a/virtio-0.9.4.lyx +++ b/virtio-0.9.4.lyx @@ -58,6 +58,7 @@ \html_be_strict false \author -608949062 "Rusty Russell,,," \author 1531152142 "pbonzini" +\author 2090695081 "jason" \end_header \begin_body @@ -4013,7 +4014,21 @@ layout Two configuration fields are currently defined. The mac address field always exists (though is only valid if VIRTIO_NET_F_MAC is set), and the status field only exists if VIRTIO_NET_F_STATUS is set. Two bits are currently defined for the status field: VIRTIO_NET_S_LINK_UP - and VIRTIO_NET_S_ANNOUNCE. + +\change_inserted 2090695081 1332220873 +(read-only) +\change_unchanged +and VIRTIO_NET_S_ANNOUNCE +\change_inserted 2090695081 1332220883 + (read-writable) +\change_unchanged +. + +\change_inserted 2090695081 1332220901 + Writing 1 to any read-writable bit of status filed would cause the bit + to be cleared. + +\change_unchanged \begin_inset listings inline false @@ -4915,7 +4930,11 @@ Processing this notification involves: \end_layout \begin_layout Enumerate -Clearing VIRTIO_NET_S_ANNOUNCE bit in the status field. +Clearing VIRTIO_NET_S_ANNOUNCE bit in the status field +\change_inserted 2090695081 1332220849 + (by writing 1 to VIRTIO_NET_S_ANNOUNCE bit) +\change_unchanged +. \end_layout \begin_layout Enumerate
Rusty Russell
2012-Mar-20 11:05 UTC
[PATCH] virtio-spec: clarify ro/rw bits and updating rule of virtio-net status field
On Tue, 20 Mar 2012 14:20:21 +0800, Jason Wang <jasowang at redhat.com> wrote:> This patch clarifies VIRTIO_NET_S_LINK_UP as a read-only bit and > VIRTIO_NET_S_ANNOUNCE as a read-writable bit. Also introduce the write 1 to > clear semantics for all read-writable bits of config status field. This could > help to reduce the config status field updating race between host and guest and > also simplify the implementation. > > Signed-off-by: Jason Wang <jasowang at redhat.com>This approach assumes an active config field, which neither lguest nor S/390 have. Thanks, Rusty. -- How could I marry someone with more hair than me? http://baldalex.org