Burning CDs was no problem with 2.6.10-rc[2|3] when you adhere to your howto in the original post (in short: Just remove the suid bits).

Burning DVDs just don't work:
* I don't know exactly which error messages I got with k3b 0.11.10, but finally had to upgrade dvd+rw-tools to the latest version (dvd+rw-tools-5.21.4.10..
* After that, k3b couldn't find dvd+rw-format which already was a known issue and could be solved by updating k3b from 0.11.10 to >= 0.11.13 (I am now using 0.11.17 because it was the one portage emerged automatically).
* I also added my username to "cdrom" and "cdrw" in /etc/group.

However, if I try to burn a DVD it only works the very first time. After the first DVD is finished I couldn't burn any other DVD until I reboot my machine.

I bet that the SCSI I/O buffer allocation failure that people see when cdrecord is suid is related to changes in mlockall that were made in 2.6.9.

Before 2.6.9, mlockall would only work for root. Now it 'works' for all users, but the behaviour is different if you aren't root - there's a (very small) limit on how much memory a non-root user can lock. cdrecord calls mlockall before dropping privilges, but then goes to allocate buffers afterwards.

1. I noticed my cdrecord is not setuid root, but rather setgid cdrw. I can't remember if this is something I did or that portage set up. Either way, should I remove the setgid bit? I don't think it will affect anything since my user owns the device, and it's in group root.

ls -l /dev/hdc (the burner):

Code:

brw------- 1 ${USER} root 22, 0 Apr 13 2004 /dev/hdc

ls -l /usr/bin/cdrecord:

Code:

-rwxr-sr-x 1 root cdrw 332868 Sep 21 12:09 /usr/bin/cdrecord*

2. I have been burning using my current kernel (2.6.9-r9). Can I do tests with that, and only compile in the debugging code if it seems to fail? I'd prefer to leave my kernel unpatched if possible, although I do want to help out. It seems like the debugging is only necessary if this burning has errors--is this true.

For what it's worth, currently burning works for any user using the dev=/dev/hdc syntax. Burning fails for normal users but works as root with the dev=ATAPI:0,0,0 syntax. In each case you also get Mr. Schiller's tirades about linux.

[ EDIT: Some of the post was garbled--fixed. ]

Last edited by d_m on Wed Dec 08, 2004 4:57 pm; edited 1 time in total

as long as the co-maintainer accepts my reasoning for it.. (we normally dont patch things that dont make it into linus's tree, and this one almost certainly wont..)_________________http://dev.gentoo.org/~dsd