1sysfs interface 2--------------- 3The pktcdvd module (packet writing driver) creates the following files in the 4sysfs: (<devid> is in the format major:minor) 5 6What: /sys/class/pktcdvd/add 7What: /sys/class/pktcdvd/remove 8What: /sys/class/pktcdvd/device_map 9Date: Oct. 2006 10KernelVersion: 2.6.20 11Contact: Thomas Maier <balagi@justmail.de> 12Description: 13 14 add: (WO) Write a block device id (major:minor) to 15 create a new pktcdvd device and map it to the 16 block device. 17 18 remove: (WO) Write the pktcdvd device id (major:minor) 19 to remove the pktcdvd device. 20 21 device_map: (RO) Shows the device mapping in format: 22 pktcdvd[0-7] <pktdevid> <blkdevid> 23 24 25What: /sys/class/pktcdvd/pktcdvd[0-7]/dev 26What: /sys/class/pktcdvd/pktcdvd[0-7]/uevent 27Date: Oct. 2006 28KernelVersion: 2.6.20 29Contact: Thomas Maier <balagi@justmail.de> 30Description: 31 dev: (RO) Device id 32 33 uevent: (WO) To send a uevent 34 35 36What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/packets_started 37What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/packets_finished 38What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/kb_written 39What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/kb_read 40What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/kb_read_gather 41What: /sys/class/pktcdvd/pktcdvd[0-7]/stat/reset 42Date: Oct. 2006 43KernelVersion: 2.6.20 44Contact: Thomas Maier <balagi@justmail.de> 45Description: 46 packets_started: (RO) Number of started packets. 47 48 packets_finished: (RO) Number of finished packets. 49 50 kb_written: (RO) kBytes written. 51 52 kb_read: (RO) kBytes read. 53 54 kb_read_gather: (RO) kBytes read to fill write packets. 55 56 reset: (WO) Write any value to it to reset 57 pktcdvd device statistic values, like 58 bytes read/written. 59 60 61What: /sys/class/pktcdvd/pktcdvd[0-7]/write_queue/size 62What: /sys/class/pktcdvd/pktcdvd[0-7]/write_queue/congestion_off 63What: /sys/class/pktcdvd/pktcdvd[0-7]/write_queue/congestion_on 64Date: Oct. 2006 65KernelVersion: 2.6.20 66Contact: Thomas Maier <balagi@justmail.de> 67Description: 68 size: (RO) Contains the size of the bio write queue. 69 70 congestion_off: (RW) If bio write queue size is below this mark, 71 accept new bio requests from the block layer. 72 73 congestion_on: (RW) If bio write queue size is higher as this 74 mark, do no longer accept bio write requests 75 from the block layer and wait till the pktcdvd 76 device has processed enough bio's so that bio 77 write queue size is below congestion off mark. 78 A value of <= 0 disables congestion control. 79 80 81Example: 82-------- 83To use the pktcdvd sysfs interface directly, you can do: 84 85# create a new pktcdvd device mapped to /dev/hdc 86echo "22:0" >/sys/class/pktcdvd/add 87cat /sys/class/pktcdvd/device_map 88# assuming device pktcdvd0 was created, look at stat's 89cat /sys/class/pktcdvd/pktcdvd0/stat/kb_written 90# print the device id of the mapped block device 91fgrep pktcdvd0 /sys/class/pktcdvd/device_map 92# remove device, using pktcdvd0 device id 253:0 93echo "253:0" >/sys/class/pktcdvd/remove 94