int virtio_set_status(VirtIODevice *vdev, uint8_t val)

{

    VirtioDeviceClass *k = VIRTIO_DEVICE_GET_CLASS(vdev);

    trace_virtio_set_status(vdev, val);



    if (virtio_has_feature(vdev, VIRTIO_F_VERSION_1)) {

        if (!(vdev->status & VIRTIO_CONFIG_S_FEATURES_OK) &&

            val & VIRTIO_CONFIG_S_FEATURES_OK) {

            int ret = virtio_validate_features(vdev);



            if (ret) {

                return ret;

            }

        }

    }

    if (k->set_status) {

        k->set_status(vdev, val);

    }

    vdev->status = val;

    return 0;

}

int virtio_set_status(VirtIODevice *vdev, uint8_t val)

{

    VirtioDeviceClass *k = VIRTIO_DEVICE_GET_CLASS(vdev);

    trace_virtio_set_status(vdev, val);



    if (virtio_has_feature(vdev, VIRTIO_F_VERSION_1)) {

        if (!(vdev->status & VIRTIO_CONFIG_S_FEATURES_OK) &&

            val & VIRTIO_CONFIG_S_FEATURES_OK) {

            int ret = virtio_validate_features(vdev);



            if (ret) {

                return ret;

            }

        }

    }

    if (k->set_status) {

        k->set_status(vdev, val);

    }

    vdev->status = val;

    return 0;

}

int FUNC_0(VirtIODevice *VAR_0, uint8_t VAR_1)

{

    VirtioDeviceClass *k = VIRTIO_DEVICE_GET_CLASS(VAR_0);

    trace_virtio_set_status(VAR_0, VAR_1);



    if (virtio_has_feature(VAR_0, VIRTIO_F_VERSION_1)) {

        if (!(VAR_0->status & VIRTIO_CONFIG_S_FEATURES_OK) &&

            VAR_1 & VIRTIO_CONFIG_S_FEATURES_OK) {

            int VAR_2 = virtio_validate_features(VAR_0);



            if (VAR_2) {

                return VAR_2;

            }

        }

    }

    if (k->set_status) {

        k->set_status(VAR_0, VAR_1);

    }

    VAR_0->status = VAR_1;

    return 0;

}

int FUNC_0(VirtIODevice *VAR_0, uint8_t VAR_1)
{ VirtioDeviceClass *k = VIRTIO_DEVICE_GET_CLASS(VAR_0); trace_virtio_set_status(VAR_0, VAR_1); if (virtio_has_feature(VAR_0, VIRTIO_F_VERSION_1)) { if (!(VAR_0->status & VIRTIO_CONFIG_S_FEATURES_OK) &&
VAR_1 & VIRTIO_CONFIG_S_FEATURES_OK) { int VAR_2 = virtio_validate_features(VAR_0); if (VAR_2) { return VAR_2; } } } if (k->set_status) { k->set_status(VAR_0, VAR_1); } VAR_0->status = VAR_1; return 0; }