cdrecord problem with my compiled kernel

From: Griff Miller II (griff.miller_at_positron.com)
Date: 08/24/03

  • Next message: ericb: "Re: cdrecord problem with my compiled kernel"
    Date: Sun, 24 Aug 2003 15:29:04 -0500
    
    

    OK, I've got Yellowdog Linux installed on my Mac clone (Umax S900) .
    cdrecord was working fine, but then I compiled my own kernel. This
    fixed my sound problem (the reason I built my own kernel), but breaks
    cdrecord in some strange and mysterious ways.

    First of all, yes I have sg in the kernel. I've tried it both as
    builtin and as a module. Here is my problem:

    % uname -a
    Linux verve 2.4.21-ben2 #2 Sat Aug 23 12:40:02 CDT 2003 ppc ppc ppc
    GNU/Linux
    % which cdrecord
    /usr/bin/cdrecord
    % ls -la /usr/bin/cdrecord
    -rwsr-xr-x 1 root root 407265 Aug 20 21:58
    /usr/bin/cdrecord
    % cdrecord -scanbus
    Cdrecord-Clone 2.01a18 (powerpc-unknown-linux-gnu) Copyright (C)
    1995-2003 Jörg Schilling
    Linux sg driver version: 3.1.25
    Using libscg version 'schily-0.7'
    scsibus0:
             0,0,0 0) 'QUANTUM ' 'FIREBALL SE2.1S ' 'PJ09' Disk
             0,1,0 1) 'IBM ' 'DNES-309170Y ' 'SA30' Disk
             0,2,0 2) 'SEAGATE ' 'ST32430N ' '0290' Disk
             0,3,0 3) 'CONNER ' 'CP30540 SUN0535' 'B0BB' Disk
             0,4,0 4) 'YAMAHA ' 'CRW6416S ' '1.0d' Removable
    CD-ROM
             0,5,0 5) *
             0,6,0 6) *
             0,7,0 7) *
    % cdrecord dev=1,4,0 blank=fast
    Cdrecord-Clone 2.01a18 (powerpc-unknown-linux-gnu) Copyright (C)
    1995-2003 Jörg Schilling
    scsidev: '1,4,0'
    scsibus: 1 target: 4 lun: 0
    Linux sg driver version: 3.1.25
    cdrecord: No such file or directory. Cannot open '/dev/pg4'. Cannot open SCSI driver.
    cdrecord: For possible targets try 'cdrecord -scanbus'. Make sure you are root.
    cdrecord: For possible transport specifiers try 'cdrecord dev=help'.

    If I run an strace, I see that it looks like I have several /dev/sg* devices
    that aren't really there:

    open("/dev/sg5", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg6", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg7", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg8", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg9", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg10", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg11", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg12", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg13", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg14", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg15", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg16", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg17", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg18", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg19", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg20", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg21", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg22", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg23", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg24", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg25", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg26", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg27", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg28", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg29", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg30", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)
    open("/dev/sg31", O_RDWR|O_NONBLOCK) = -1 ENXIO (No such device or address)

    In other words, the files are there in /dev, but when cdrecord actually tries
    to use them, the open fails. sg[0-4] seem okay, though. So it goes on to try
    other transports which also fail, and finally gives up, reporting the last one
    it tried (pg4) .

    What did I miss in my compile of the kernel that would make /dev/sg5 through
    /dev/sg31 actually work?

    Griff


  • Next message: ericb: "Re: cdrecord problem with my compiled kernel"

    Relevant Pages

    • Re: Review of FreeBSD 5.4
      ... Note how I simply stated that I was a Slackware Linux user, ... Oh sure there are users who couldn't compile it, ... That's hardly the kernel dev's fault. ... that then caused trouble for cdrecord because cdrecord used that at the ...
      (comp.unix.bsd.freebsd.misc)
    • Re: memory not released after using cdrecord/cdrdao (was: audio cd writing causes massive swap and c
      ... The kernel is most definitely not releasing the memory ... I further would have to say that the kernel isn't being ... >after cdrdao or cdrecord have used it, ... the Linux Kernel maintainers have not been very helpful with Linux ...
      (Linux-Kernel)
    • Re: PATCH: cdrecord: avoiding scsi device numbering for ide devices
      ... I have more than 20 years of experiences in Kernel and Application ... > primarily SCSI devices and therefore they need to have instance numbers within ... > If you do not fix this, you just verify that Linux does not like it's users. ... I'm a long time Linux and cdrecord user, and I must say I always hated ...
      (Linux-Kernel)
    • Re: cdrecord fails performing OPC
      ... The broken error message you see is caused by a definite bug in the linux ... Kernel as the only possible SCSI status code that is returned from ATAPI ... Did you write the DVD with cdrecord? ... it up and returns the SCSI command status to cdrecord. ...
      (comp.os.linux.hardware)
    • Re: Getting CDRW to work in Debian
      ... Note that these instructions match a tuned modular kernel such as ... method to install your network and sound drivers. ... Test your configuration using cdrecord -scanbus. ... Create mount points for these devices. ...
      (Debian-User)