2006-12-08 10:36:12 +00:00
|
|
|
sysfs interface
|
|
|
|
---------------
|
2018-02-23 13:16:32 +00:00
|
|
|
The pktcdvd module (packet writing driver) creates the following files in the
|
|
|
|
sysfs: (<devid> is in the format major:minor)
|
|
|
|
|
|
|
|
What: /sys/class/pktcdvd/add
|
|
|
|
What: /sys/class/pktcdvd/remove
|
|
|
|
What: /sys/class/pktcdvd/device_map
|
|
|
|
Date: Oct. 2006
|
|
|
|
KernelVersion: 2.6.20
|
|
|
|
Contact: Thomas Maier <balagi@justmail.de>
|
|
|
|
Description:
|
|
|
|
|
2020-10-30 07:40:50 +00:00
|
|
|
========== ==============================================
|
|
|
|
add (WO) Write a block device id (major:minor) to
|
2018-02-23 13:16:32 +00:00
|
|
|
create a new pktcdvd device and map it to the
|
|
|
|
block device.
|
|
|
|
|
2020-10-30 07:40:50 +00:00
|
|
|
remove (WO) Write the pktcdvd device id (major:minor)
|
2018-02-23 13:16:32 +00:00
|
|
|
to remove the pktcdvd device.
|
|
|
|
|
2020-10-30 07:40:50 +00:00
|
|
|
device_map (RO) Shows the device mapping in format:
|
2018-02-23 13:16:32 +00:00
|
|
|
pktcdvd[0-7] <pktdevid> <blkdevid>
|
2020-10-30 07:40:50 +00:00
|
|
|
========== ==============================================
|
2018-02-23 13:16:32 +00:00
|
|
|
|
|
|
|
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/dev
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/uevent
|
|
|
|
Date: Oct. 2006
|
|
|
|
KernelVersion: 2.6.20
|
|
|
|
Contact: Thomas Maier <balagi@justmail.de>
|
|
|
|
Description:
|
|
|
|
dev: (RO) Device id
|
|
|
|
|
|
|
|
uevent: (WO) To send a uevent
|
|
|
|
|
|
|
|
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/packets_started
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/packets_finished
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/kb_written
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/kb_read
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/kb_read_gather
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/reset
|
|
|
|
Date: Oct. 2006
|
|
|
|
KernelVersion: 2.6.20
|
|
|
|
Contact: Thomas Maier <balagi@justmail.de>
|
|
|
|
Description:
|
|
|
|
packets_started: (RO) Number of started packets.
|
|
|
|
|
|
|
|
packets_finished: (RO) Number of finished packets.
|
|
|
|
|
|
|
|
kb_written: (RO) kBytes written.
|
|
|
|
|
|
|
|
kb_read: (RO) kBytes read.
|
|
|
|
|
|
|
|
kb_read_gather: (RO) kBytes read to fill write packets.
|
|
|
|
|
|
|
|
reset: (WO) Write any value to it to reset
|
|
|
|
pktcdvd device statistic values, like
|
|
|
|
bytes read/written.
|
|
|
|
|
|
|
|
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/write_queue/size
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/write_queue/congestion_off
|
|
|
|
What: /sys/class/pktcdvd/pktcdvd[0-7]/write_queue/congestion_on
|
|
|
|
Date: Oct. 2006
|
|
|
|
KernelVersion: 2.6.20
|
|
|
|
Contact: Thomas Maier <balagi@justmail.de>
|
|
|
|
Description:
|
2020-10-30 07:40:50 +00:00
|
|
|
============== ================================================
|
|
|
|
size (RO) Contains the size of the bio write queue.
|
2018-02-23 13:16:32 +00:00
|
|
|
|
2020-10-30 07:40:50 +00:00
|
|
|
congestion_off (RW) If bio write queue size is below this mark,
|
2018-02-23 13:16:32 +00:00
|
|
|
accept new bio requests from the block layer.
|
2006-12-08 10:36:12 +00:00
|
|
|
|
2020-10-30 07:40:50 +00:00
|
|
|
congestion_on (RW) If bio write queue size is higher as this
|
2018-02-23 13:16:32 +00:00
|
|
|
mark, do no longer accept bio write requests
|
|
|
|
from the block layer and wait till the pktcdvd
|
|
|
|
device has processed enough bio's so that bio
|
|
|
|
write queue size is below congestion off mark.
|
|
|
|
A value of <= 0 disables congestion control.
|
2020-10-30 07:40:50 +00:00
|
|
|
============== ================================================
|
2006-12-08 10:36:12 +00:00
|
|
|
|
|
|
|
|
|
|
|
Example:
|
|
|
|
--------
|
2020-10-30 07:40:50 +00:00
|
|
|
To use the pktcdvd sysfs interface directly, you can do::
|
|
|
|
|
|
|
|
# create a new pktcdvd device mapped to /dev/hdc
|
|
|
|
echo "22:0" >/sys/class/pktcdvd/add
|
|
|
|
cat /sys/class/pktcdvd/device_map
|
|
|
|
# assuming device pktcdvd0 was created, look at stat's
|
|
|
|
cat /sys/class/pktcdvd/pktcdvd0/stat/kb_written
|
|
|
|
# print the device id of the mapped block device
|
|
|
|
fgrep pktcdvd0 /sys/class/pktcdvd/device_map
|
|
|
|
# remove device, using pktcdvd0 device id 253:0
|
|
|
|
echo "253:0" >/sys/class/pktcdvd/remove
|