Revision tags: v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3, v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2, v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc, v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1 |
|
#
9d96478c |
| 11-Sep-2017 |
Imre Vadász <imre@vdsz.com> |
virtio - Specify handler and argument in bind_intr, instead of vq alloc.
|
Revision tags: v4.8.1, v4.8.0, v4.6.2, v4.9.0, v4.8.0rc |
|
#
dfa40836 |
| 13-Feb-2017 |
Imre Vadász <imre@vdsz.com> |
virtio: Replace one cpu_mfence() by cpu_lfence(), and one by cpu_sfence().
* The cpu_mfence() in virtqueue_dequeue() can be replaced by cpu_lfence(), since we only need to make sure that we read t
virtio: Replace one cpu_mfence() by cpu_lfence(), and one by cpu_sfence().
* The cpu_mfence() in virtqueue_dequeue() can be replaced by cpu_lfence(), since we only need to make sure that we read the vq->vq_ring.used->idx value before reading any other entries from the vq->vq_ring.used ring.
* The cpu_mfence() in vq_ring_update_avail() can be replaced by cpu_sfence(), since no one else is writing to the vq->vq_ring.avail struct.
show more ...
|
Revision tags: v4.6.1, v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0 |
|
#
ba08e4d1 |
| 28-May-2016 |
Matthew Dillon <dillon@apollo.backplane.com> |
virtio - fix contigmalloc muff last commit
* Have to use M_WAITOK for contigmalloc, not M_INTWAIT.
Reported-by: tuxillo
|
#
eb55c32f |
| 28-May-2016 |
Matthew Dillon <dillon@apollo.backplane.com> |
virtio - Fix a few porting issues and bugs
* vtblk_maximum_segments() was really buggy. It was adding the base min segments to blkcfg->seg_max, miscalculating values for the case where the F_SE
virtio - Fix a few porting issues and bugs
* vtblk_maximum_segments() was really buggy. It was adding the base min segments to blkcfg->seg_max, miscalculating values for the case where the F_SEG_MAX feature is not in the feature list.
This could result in virtio imploding on a too-small sglist.
* Fix situations where M_NOWAIT is improperly used.
* At least use 16-byte alignment for contigmalloc()'s.
show more ...
|
Revision tags: v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc |
|
#
cb6e1f75 |
| 30-Oct-2015 |
Imre Vadász <imre@vdsz.com> |
virtio: Add indirect buffers support to common virtio code.
* Uses contigmalloc instead of kmalloc for allocating the indirect descriptors, because DragonFly's kmalloc doesn't return sufficiently
virtio: Add indirect buffers support to common virtio code.
* Uses contigmalloc instead of kmalloc for allocating the indirect descriptors, because DragonFly's kmalloc doesn't return sufficiently aligned or physically contiguous memory.
Taken-From: FreeBSD
show more ...
|
Revision tags: v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4, v4.0.3, v4.0.2, v4.0.1 |
|
#
58db6936 |
| 22-Nov-2014 |
Imre Vadasz <imre@vdsz.com> |
virtio_blk: Enable dump support. Partial sync with FreeBSD up to r252707.
* Adds support for dumping to the virtio_blk driver.
* The dev.vtblk.X.writecache_mode sysctl can now be used to toggle wri
virtio_blk: Enable dump support. Partial sync with FreeBSD up to r252707.
* Adds support for dumping to the virtio_blk driver.
* The dev.vtblk.X.writecache_mode sysctl can now be used to toggle write caching by the virtual-machine host.
* Add a workaround in sys/dev/virtual/virtio/virtio/virtqueue.c to avoid a serializer exit/enter pair while dumping.
* Reduce diff relative to FreeBSD's virtio_blk.c version.
* Adapt manpage, comment out description of the hw.vtblk.no_ident tunable.
* Updates are taken from FreeBSD's r252707, r252703 and r247829.
show more ...
|
Revision tags: v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2, v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.7.0, v3.4.3, v3.4.2, v3.4.0, v3.4.1, v3.4.0rc, v3.5.0 |
|
#
2f1382ca |
| 19-Jan-2013 |
Venkatesh Srinivas <me@endeavour.zapto.org> |
kernel -- virtio: Implement virtio-layer lwkt_serializer for devices
* Switch virtio device targets (currently only -blk) to use a serializer for synchronizing per-target state. Thread the seria
kernel -- virtio: Implement virtio-layer lwkt_serializer for devices
* Switch virtio device targets (currently only -blk) to use a serializer for synchronizing per-target state. Thread the serializer through virtqueue_notify (release around kick) and into the bus interrupt setup code.
* Remove dump support from virtio-blk for now; it doesn't work and results in further panics from an incorrectly setup bio.
* Other cleanups of virtio-blk (de-indirect locks).
show more ...
|
#
11447b59 |
| 24-Dec-2012 |
Venkatesh Srinivas <vsrinivas@ops101.org> |
kernel -- Import virtio & virtio-block drivers.
virtio-blk provides a paravirtualized storage controller, with one disk per virtio device.
This driver is based on Tim Bisson's port of FreeBSD's vir
kernel -- Import virtio & virtio-block drivers.
virtio-blk provides a paravirtualized storage controller, with one disk per virtio device.
This driver is based on Tim Bisson's port of FreeBSD's virtio and virtio-blk devices. Differences from Tim's port:
* Import all FreeBSD updates from 4/16 on. * Remove indirect descriptor support from virtio device. * Mark devices as D_MPSAFE; removes mplock around disk routines, they are all correctly self-synchronized. * Implement devstat support. * Move I/O completion routine to threaded taskqueue. * Do not hold target spinlock around virtqueue notify. * Move objcache caches to kmalloc.
show more ...
|