... the kernel patch (apparently went in around 2.6.7), and a userland
patch as well. Both come from Peter Osterlund, <[email protected]>. He
sent me a copy of the userland patch, and gave me the go-ahead to
forward it here.
For what it's worth, the result seems to work, though the Debian-specific parts of the package (init.d script) will have use for some updates.
On Sun, Aug 15, 2004 at 05:24:54PM +0200, Cyrille Ch?p?lov wrote:
... the kernel patch (apparently went in around 2.6.7), and a userland >>patch as well. Both come from Peter Osterlund, <[email protected]>. He
sent me a copy of the userland patch, and gave me the go-ahead to
forward it here.
Thanks for doing so!
So this means that I will have to tell people in README.Debian to fetch
their kernel patch from the following page, right?
http://w1.894.telia.com/~u89404340/patches/packet/
For what it's worth, the result seems to work, though the Debian-specific >>parts of the package (init.d script) will have use for some updates.
Can you be more specific? What needs to change?
Yes, except that for sufficiently recent versions of the kernel (perhaps
as old as 2.6.7, the 2.6.8-rcX series are definitely OK), the patch has
been included. I don't know what older versions of the 2.6 kernel are
doing;
they probably lack the driver entirely, and aren't that relevant anyway.
The new pktsetup does the following:
1. If called the old way, eg:
pktsetup /dev/pktcdvd0 /dev/hdc
it uses the old (2.4) ioctl.
2. If called the new way, eg:
pktsetup 0 /dev/hdc
(where 0 really is any arbitrary name), then it uses the new (2.6)
ioctl, which triggers a dynamic allocation of a minor code within the dynamically-allocated major for pktcdvd, which causes udev to add a node called "0" within /dev/pktcdvd/. Then, the user can mount the new block device /dev/pktcdvd/0.
I guess a sensible way to do it in Debian, would be to keep doing what's been done until today, as long as udev is not detected. As soon as /dev
is detected as a mount point for some file system, use the new interface (first modprobe "pktcdvd", just in case).
Next, how to name the packet devices. A sensible way might be to take
the basename of the underlying device, except when it's "control"
(collides with /dev/pktcdvd/control) or "disc" (devs-like naming sceme, every device will have the same base name), in which case a sequential
name will help.
Hi Cyrille (and Samuele, Ian, if you're interested),
please test the udftools package at <http://atterer.net/debian/> and tell
me whether it works! *Please* test both with and without udev installed!! Sorry, this package is completely untested - I really depend on your help
to get everything working.
On Sun, Aug 15, 2004 at 07:04:18PM +0200, Cyrille Ch�p�lov wrote:
Yes, except that for sufficiently recent versions of the kernel (perhaps
as old as 2.6.7, the 2.6.8-rcX series are definitely OK), the patch has >>been included. I don't know what older versions of the 2.6 kernel are >>doing;
they probably lack the driver entirely, and aren't that relevant anyway.
OK, I've change README.Debian to recommend 2.6.8+ and to point to Peter Osterlund's homepage for the patches for earlier versions. The patch to pktsetup is applied.
I guess a sensible way to do it in Debian, would be to keep doing what's >>been done until today, as long as udev is not detected. As soon as /dev
is detected as a mount point for some file system, use the new interface >>(first modprobe "pktcdvd", just in case).
udev is no filesystem, it's a user-space program run via hotplug. I'm detecting it by the presence of /dev/.udev* - I couldn't find anything official about this though, I hope it'll continue working in the future.
The init script does a "modprobe pktcdvd", although I'm not sure whether it should be doing such a thing...
Next, how to name the packet devices. A sensible way might be to take
the basename of the underlying device, except when it's "control"
(collides with /dev/pktcdvd/control) or "disc" (devs-like naming sceme, >>every device will have the same base name), in which case a sequential
name will help.
Too complicated, and it'll lead to completely different names the moment people install udev, which is not desirable IMHO
When udev is detected, the init script now by default sets up the devices
as /dev/pktcdvd/0, /dev/pktcdvd/1 etc - but see /etc/udftools/default for a way to override the names "0", "1" with names of your choice.
again, check http://atterer.net/debian/ - it's the same version number, but
a different package.
The name of PDEVICES in the default file changed to DEVICENAMES - this allowed me to get rid of the "if" construct. Also, it made it possible to execute modprobe 1) only if DEVICES is non-empty, and 2) before scanning
the contents of /proc/mounts - I also changed that check.
| Sysop: | Keyop |
|---|---|
| Location: | Huddersfield, West Yorkshire, UK |
| Users: | 715 |
| Nodes: | 16 (2 / 14) |
| Uptime: | 44:10:22 |
| Calls: | 12,111 |
| Calls today: | 2 |
| Files: | 15,008 |
| Messages: | 6,518,445 |