xref: /illumos-gate/usr/src/man/man4d/vioblk.4d (revision 02b17e23cf5bf66a5ea787e066ae3d1aa49bd856)
1.\"
2.\" This file and its contents are supplied under the terms of the
3.\" Common Development and Distribution License ("CDDL"), version 1.0.
4.\" You may only use this file in accordance with the terms of version
5.\" 1.0 of the CDDL.
6.\"
7.\" A full copy of the text of the CDDL should have accompanied this
8.\" source.  A copy of the CDDL is also available via the Internet at
9.\" http://www.illumos.org/license/CDDL.
10.\"
11.\"
12.\" Copyright 2020 Oxide Computer Company
13.\"
14.Dd August 28, 2021
15.Dt VIOBLK 4D
16.Os
17.Sh NAME
18.Nm vioblk
19.Nd virtio block device
20.Sh SYNOPSIS
21.Pa /dev/dsk/cXt0d0
22.Pa /dev/rdsk/cXt0d0
23.Sh DESCRIPTION
24The
25.Nm
26driver is a
27.Xr blkdev 4D
28based device that supports the virtio para-virtualization block device
29specification which is commonly used by many hypervisors and emulators.
30The device supports what the specification calls the more commonly found
31.Sq legacy
32interface for devices.
33.Pp
34The driver supports the following features, if offered by the device:
35.Bl -dash
36.It
37Volatile write-cache
38.It
39Discarding unused sectors
40.Pq ala TRIM, UNMAP
41.It
42Read-only device support
43.It
44Physical block sizes that are distinct from logical 512-byte blocks
45.It
46Synthesized disk geometry
47.El
48.Sh APPLICATION PROGRAMMING INTERFACE
49For each device instance, a
50.Xr blkdev 4D
51instance is created and treated as an independent controller with a
52single device, meaning that the
53.Em cX
54part of
55.Em cXt0d0
56will vary for each device.
57Because the driver leverages the
58.Xr blkdev 4D
59framework, most standard disk manipulation utilities will function such
60as
61.Xr diskinfo 8
62for discovering devices,
63.Xr format 8
64for manipulating partition tables,
65.Xr iostat 8
66for seeing device I/O statistics, and a subset of the
67.Xr dkio 4I
68ioctl requests to retrieve information about the device.
69.Sh ARCHITECTURE
70The
71.Nm
72driver is only supported on
73.Sy x86 .
74.Sh FILES
75.Bl -tag -width Pa
76.It Pa /dev/dsk/cXt0d0
77Block device minor node.
78.It Pa /dev/rdsk/cXt0d0
79Character device minor node.
80.It Pa /kernel/drv/amd64/vioblk
81x86 device driver.
82.El
83.Sh SEE ALSO
84.Xr blkdev 4D ,
85.Xr virtio 4D ,
86.Xr dkio 4I ,
87.Xr diskinfo 8
88.Rs
89.%T Virtual I/O Device (VIRTIO) Version 1.1
90.%D April, 2019
91.%U https://docs.oasis-open.org/virtio/virtio/v1.1/virtio-v1.1.html
92.Re
93