[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] blktap2: make protocol specific usage of shared sring explicit
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1278093482 -3600 # Node ID feee0abed6aa75134c47ba1b712305c871e0669e # Parent ae68758f8862bc43ab6bbe4ad3a8594c28b9bc39 blktap2: make protocol specific usage of shared sring explicit I don't think protocol specific data really belongs in this header but since it is already there and we seem to be stuck with it let's at least make the users explicit lest people get caught out by future new fields moving the pad field around. This is the Xen portion of this change. The kernel portion will be sent separately. There is no dependency between the two. Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx> Cc: Jeremy Fitzhardinge <jeremy@xxxxxxxx> Cc: Daniel Stodden <daniel.stodden@xxxxxxxxxx> Cc: Dongxiao Xu <dongxiao.xu@xxxxxxxxx> --- tools/blktap2/drivers/tapdisk-vbd.c | 2 +- xen/include/public/io/ring.h | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff -r ae68758f8862 -r feee0abed6aa tools/blktap2/drivers/tapdisk-vbd.c --- a/tools/blktap2/drivers/tapdisk-vbd.c Fri Jul 02 18:56:34 2010 +0100 +++ b/tools/blktap2/drivers/tapdisk-vbd.c Fri Jul 02 18:58:02 2010 +0100 @@ -1684,7 +1684,7 @@ tapdisk_vbd_check_ring_message(td_vbd_t if (!vbd->ring.sring) return -EINVAL; - switch (vbd->ring.sring->pad[0]) { + switch (vbd->ring.sring->private.tapif_user.msg) { case 0: return 0; diff -r ae68758f8862 -r feee0abed6aa xen/include/public/io/ring.h --- a/xen/include/public/io/ring.h Fri Jul 02 18:56:34 2010 +0100 +++ b/xen/include/public/io/ring.h Fri Jul 02 18:58:02 2010 +0100 @@ -103,8 +103,16 @@ struct __name##_sring { struct __name##_sring { \ RING_IDX req_prod, req_event; \ RING_IDX rsp_prod, rsp_event; \ - uint8_t netfront_smartpoll_active; \ - uint8_t pad[47]; \ + union { \ + struct { \ + uint8_t smartpoll_active; \ + } netif; \ + struct { \ + uint8_t msg; \ + } tapif_user; \ + uint8_t pvt_pad[4]; \ + } private; \ + uint8_t pad[44]; \ union __name##_sring_entry ring[1]; /* variable-length */ \ }; \ \ _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |