Messages in this thread | | | Subject | Re: Problems with eject and pktcdvd | From | Peter Osterlund <> | Date | 15 Jan 2006 22:34:59 +0100 |
| |
Jan Engelhardt <jengelh@linux01.gwdg.de> writes:
> >> pktsetup 0 /dev/hdc > >> mount /dev/pktcdvd/0 /mnt/tmp > >> umount /mnt/tmp > > A question BTW; I do not seem to need pktcdvd for DVD+RWs, > I can just mount them after mkfs'ing /dev/hdc - what's up with that?
Basically, if you don't use the packet writing driver, the DVD drive firmware will do similar work on its own, because the hardware can only write 32KB blocks. The firmware is often slower than the pktcdvd driver, because the firmware doesn't have as much memory available as the kernel to reorder I/O operations for improved throughput.
See also Documentation/cdrom/packet-writing.txt:
Packet writing for DVD+RW media -------------------------------
According to the DVD+RW specification, a drive supporting DVD+RW discs shall implement "true random writes with 2KB granularity", which means that it should be possible to put any filesystem with a block size >= 2KB on such a disc. For example, it should be possible to do:
# dvd+rw-format /dev/hdc (only needed if the disc has never been formatted) # mkudffs /dev/hdc # mount /dev/hdc /cdrom -t udf -o rw,noatime
However, some drives don't follow the specification and expect the host to perform aligned writes at 32KB boundaries. Other drives do follow the specification, but suffer bad performance problems if the writes are not 32KB aligned.
Both problems can be solved by using the pktcdvd driver, which always generates aligned writes.
# dvd+rw-format /dev/hdc # pktsetup dev_name /dev/hdc # mkudffs /dev/pktcdvd/dev_name # mount /dev/pktcdvd/dev_name /cdrom -t udf -o rw,noatime
-- Peter Osterlund - petero2@telia.com http://web.telia.com/~u89404340 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |