Date: Thu, 30 May 2002 14:35:55 +0200 From: Richard Nyberg <rnyberg@it.su.se> To: Soeren Schmidt <sos@freebsd.dk> Cc: freebsd-hackers@freebsd.org Subject: Re: process hang in atprq state Message-ID: <20020530143555.D3400@gromit.it.su.se> In-Reply-To: <200205292024.g4TKO1N8081293@freebsd.dk>; from sos@freebsd.dk on Wed, May 29, 2002 at 10:24:01pm %2B0200 References: <200205292020.g4TKKcHQ080631@freebsd.dk> <200205292024.g4TKO1N8081293@freebsd.dk>
next in thread | previous in thread | raw e-mail | index | archive | help
Thanks for the speedy reply Søren :) Soeren Schmidt may have written: > It seems Soeren Schmidt wrote: > > It seems Richard Nyberg wrote: > > > Hi there. > > > I seem to have some problems with my cd read program. > > > > > > I've attached a small prototype program that for some reason hangs > > > in atprq, even though I use a timeout of 5 seconds. The program reads > > > a cd in raw format using the MMC READ_CD command. It works fine :) > > > except that it never manages to finish because of the hang. The hang > > > doesn't seem to be linked to any specific place on the cd, but it might > > > be linked to my ignorance ;) > > > > Uhm, you just need to set the blocksize on the CD device with the > > CDRIOCGETBLOCKSIZE and then just read the CD with > > dd if=/dev/acdX of=fil bs=2352 > > That will read the CD in RAW mode... Ok, I see! However, I also want to read the raw subchannel data, which I don't see any way of doing. In addition I also want to be able to handle flawed cd:s in a semi intelligent manner (examine the error instead of just stopping like dd). > Oh, I forgot to tell you that it hangs because you have to stop > reading at the last block, the drive will try to read anything > you ask it to, but some drives newer return data for nonexistin blocks.. Unfortunately, this cannot be it :( The hangs occurs at different blocks on the same cd and often long before the last lba. I tried the dd approach and it worked much better, ie. no hang, so I must be doing something wrong. BTW, I noticed some stupid block count bugs in the source I posted, but they shouldn't matter since the hangs occured even when I just read one block at a time. -Richard To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020530143555.D3400>