Re: ioctl() still problem w/2.5.18

From: Stefan M. Brandl (smb@smbnet.de)
Date: Sun May 26 2002 - 09:16:01 EST


> In 2.5.16, have any restrictions been placed on ioctl()? With 2.5.16,
> a non-root user is unable to use /dev/cdrom with an ide cd, to play audio cds.
> An strace of workbone shows this:
>
> open("/dev/cdrom", O_RDONLY) = 3
> ioctl(3, CDROMSUBCHNL, 0xbfffe814) = -1 EACCES (Permission denied)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> rt_sigaction(SIGINT, {SIG_IGN}, {SIG_DFL}, 8) = 0
> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
> ioctl(0, SNDCTL_TMR_START, {B38400 opost isig -icanon -echo ...}) = 0
> ioctl(0, TCGETS, {B38400 opost isig -icanon -echo ...}) = 0
> write(1, "\n", 1
> ) = 1
> ioctl(0, SNDCTL_TMR_START, {B38400 opost isig icanon echo ...}) = 0
> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
> rt_sigaction(SIGINT, {SIG_DFL}, {SIG_IGN}, 8) = 0
> munmap(0x40017000, 4096) = 0
> _exit(0) = ?
>
> Workbone is supposed to access /dev/cdrom, and then wait for user
> input from the number pad, to play the cd. the following strace from workbone
> in 2.5.7 shows this working properly:
>
> write(1, "\33[10m\n", 6
> ) = 55
> open("/dev/cdrom", O_RDONLY) = 3 "..., 55
> ioctl(3, CDROMSUBCHNL, 0xbfffe654) = 0
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> ioctl(3, CDROMREADTOCHDR, 0xbfffe626) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> ioctl(3, CDROMREADTOCENTRY, 0xbfffe628) = 0
> rt_sigaction(SIGINT, {SIG_IGN}, {SIG_DFL}, 8) = 0
> ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
>
> This worked as root, and with a kernel <= 2.5.13. I didn't try this
> with 2.5.14 or 2.5.15.
>

Same problem here.
While kernels <= 2.5.15 don't show this error, 2.5.16, 17 and 18 do.
The bug? must have been introduced with 2.5.16.

Stefan
-
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/



This archive was generated by hypermail 2b29 : Fri May 31 2002 - 22:00:18 EST