lkml.org 
[lkml]   [2020]   [Aug]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH v2 16/24] virtio_scsi: correct tags for config space fields
    Tag config space fields as having virtio endian-ness.

    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    ---
    drivers/scsi/virtio_scsi.c | 4 ++--
    include/uapi/linux/virtio_scsi.h | 20 ++++++++++----------
    2 files changed, 12 insertions(+), 12 deletions(-)

    diff --git a/drivers/scsi/virtio_scsi.c b/drivers/scsi/virtio_scsi.c
    index 0e0910c5b942..c36aeb9a1330 100644
    --- a/drivers/scsi/virtio_scsi.c
    +++ b/drivers/scsi/virtio_scsi.c
    @@ -746,14 +746,14 @@ static struct scsi_host_template virtscsi_host_template = {

    #define virtscsi_config_get(vdev, fld) \
    ({ \
    - typeof(((struct virtio_scsi_config *)0)->fld) __val; \
    + __virtio_native_type(struct virtio_scsi_config, fld) __val; \
    virtio_cread(vdev, struct virtio_scsi_config, fld, &__val); \
    __val; \
    })

    #define virtscsi_config_set(vdev, fld, val) \
    do { \
    - typeof(((struct virtio_scsi_config *)0)->fld) __val = (val); \
    + __virtio_native_type(struct virtio_scsi_config, fld) __val = (val); \
    virtio_cwrite(vdev, struct virtio_scsi_config, fld, &__val); \
    } while(0)

    diff --git a/include/uapi/linux/virtio_scsi.h b/include/uapi/linux/virtio_scsi.h
    index cc18ef8825c0..0abaae4027c0 100644
    --- a/include/uapi/linux/virtio_scsi.h
    +++ b/include/uapi/linux/virtio_scsi.h
    @@ -103,16 +103,16 @@ struct virtio_scsi_event {
    } __attribute__((packed));

    struct virtio_scsi_config {
    - __u32 num_queues;
    - __u32 seg_max;
    - __u32 max_sectors;
    - __u32 cmd_per_lun;
    - __u32 event_info_size;
    - __u32 sense_size;
    - __u32 cdb_size;
    - __u16 max_channel;
    - __u16 max_target;
    - __u32 max_lun;
    + __virtio32 num_queues;
    + __virtio32 seg_max;
    + __virtio32 max_sectors;
    + __virtio32 cmd_per_lun;
    + __virtio32 event_info_size;
    + __virtio32 sense_size;
    + __virtio32 cdb_size;
    + __virtio16 max_channel;
    + __virtio16 max_target;
    + __virtio32 max_lun;
    } __attribute__((packed));

    /* Feature Bits */
    --
    MST
    \
     
     \ /
      Last update: 2020-08-03 23:00    [W:4.462 / U:0.124 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site