linux-mainline/drivers
Rusty Russell e467cde238 Block driver using virtio.
The block driver uses scatter-gather lists with sg[0] being the
request information (struct virtio_blk_outhdr) with the type, sector
and inbuf id.  The next N sg entries are the bio itself, then the last
sg is the status byte.  Whether the N entries are in or out depends on
whether it's a read or a write.

We accept the normal (SCSI) ioctls: they get handed through to the other
side which can then handle it or reply that it's unsupported.  It's
not clear that this actually works in general, since I don't know
if blk_pc_request() requests have an accurate rq_data_dir().

Although we try to reply -ENOTTY on unsupported commands, ioctl(fd,
CDROMEJECT) returns success to userspace.  This needs a separate
patch.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: Jens Axboe <jens.axboe@oracle.com>
2007-10-23 15:49:54 +10:00
..
acorn/char
acpi Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial 2007-10-19 20:36:17 -07:00
amba
ata [SG] Update drivers to use sg helpers 2007-10-22 21:19:53 +02:00
atm
auxdisplay
base memory hotplug: rearrange memory hotplug notifier 2007-10-22 08:13:17 -07:00
block Block driver using virtio. 2007-10-23 15:49:54 +10:00
bluetooth [Bluetooth] Add generic driver for Bluetooth USB devices 2007-10-22 02:59:46 -07:00
cdrom
char
clocksource
connector
cpufreq
cpuidle
crypto
dca
dio
dma
edac
eisa
fc4
firewire firewire: fw-ohci: shut up a superfluous compiler warning 2007-10-22 19:48:56 +02:00
firmware
hid
hwmon Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial 2007-10-19 20:36:17 -07:00
i2c
ide [SG] Update drivers to use sg helpers 2007-10-22 21:19:53 +02:00
ieee1394 [SG] Update drivers to use sg helpers 2007-10-22 21:19:53 +02:00
infiniband [SG] Update drivers to use sg helpers 2007-10-22 21:19:53 +02:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2007-10-22 19:29:58 -07:00
isdn
kvm Consolidate host virtualization support under Virtualization menu 2007-10-23 15:49:47 +10:00
leds
lguest Boot with virtual == physical to get closer to native Linux. 2007-10-23 15:49:54 +10:00
macintosh Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial 2007-10-19 20:36:17 -07:00
mca
md [SG] Update drivers to use sg helpers 2007-10-22 21:19:53 +02:00
media Merge branch 'master' of ssh://master.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb 2007-10-22 19:20:22 -07:00
message
mfd
misc
mmc [SG] Update drivers to use sg helpers 2007-10-22 21:19:53 +02:00
mtd
net Net driver using virtio 2007-10-23 15:49:54 +10:00
nubus
of
oprofile
parisc
parport
pci intel-iommu sg chaining support 2007-10-22 08:13:19 -07:00
pcmcia
pnp
power Merge git://git.infradead.org/battery-2.6 2007-10-22 19:20:52 -07:00
ps3
rapidio
rtc
s390 [S390] struct class_device -> struct device conversion. 2007-10-22 12:52:48 +02:00
sbus vfc_dev conversion to mutex: fallout 2007-10-20 15:04:06 -07:00
scsi [SG] Update drivers to use sg helpers 2007-10-22 21:19:53 +02:00
serial Blackfin serial driver Kconfig: depend on DMA not being enabled rather than a specific DMA size 2007-10-21 22:30:01 +08:00
sh
sn
spi
ssb
tc
telephony
uio
usb [SG] Update drivers to use sg helpers 2007-10-22 21:19:53 +02:00
video Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial 2007-10-19 20:36:17 -07:00
virtio Virtio interface 2007-10-23 15:49:54 +10:00
w1
watchdog [POWERPC] Update device tree binding for mpc5200 gpt 2007-10-21 12:42:55 -06:00
xen
zorro
Kconfig Virtio interface 2007-10-23 15:49:54 +10:00
Makefile Virtio interface 2007-10-23 15:49:54 +10:00