diff options
author | Cornelia Huck <cohuck@redhat.com> | 2019-01-31 15:53:14 +0300 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2019-03-06 19:19:57 +0300 |
commit | ab7a2375fb8e83f8744c34442f476fa5a9df5e35 (patch) | |
tree | 58698720fc0a7a79f4fdefaae195aabf57a83dba /scripts | |
parent | 971bedca26e037ee961e090c84c2640563836d3e (diff) | |
download | linux-ab7a2375fb8e83f8744c34442f476fa5a9df5e35.tar.xz |
virtio: hint if callbacks surprisingly might sleep
A virtio transport is free to implement some of the callbacks in
virtio_config_ops in a matter that they cannot be called from
atomic context (e.g. virtio-ccw, which maps a lot of the callbacks
to channel I/O, which is an inherently asynchronous mechanism).
This can be very surprising for developers using the much more
common virtio-pci transport, just to find out that things break
when used on s390.
The documentation for virtio_config_ops now contains a comment
explaining this, but it makes sense to add a might_sleep() annotation
to various wrapper functions in the virtio core to avoid surprises
later.
Note that annotations are NOT added to two classes of calls:
- direct calls from device drivers (all current callers should be
fine, however)
- calls which clearly won't be made from atomic context (such as
those ultimately coming in via the driver core)
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions