cd(4) vs bluray ...
Juergen Lock
nox at jelal.kn-bremen.de
Thu Aug 6 22:57:08 UTC 2009
On Thu, Aug 06, 2009 at 10:07:15PM +0200, Juergen Lock wrote:
> On Thu, Aug 06, 2009 at 10:46:48PM +0300, Alexander Motin wrote:
> > Juergen Lock wrote:
> > > So I put the problematic optical drive on a siis pcie card now because
> > > I wanted to play with esata too which seems to be kinda broken on the
> > > jmicron that I used before at least with _this_ esata drive (hw issue
> > > most likely, has been reported by users of other OSes too) - and I
> > > noticed two things:
> > >
> > > 1. cd(4) (which the new ahci and siis drivers now also use) fails to do
> > > any reads when a drive fails the read toc command as seems to happen
> > > with bluray (data) discs at least; I was able to work around this
> > > by moving the bailout: label up a few lines in scsi_cd.c:cdcheckmedia():
> > >
> > > Index: sys/cam/scsi/scsi_cd.c
> > > @@ -2868,12 +2868,18 @@
> > > }
> > >
> > > softc->flags |= CD_FLAG_VALID_TOC;
> > > +
> > > +bailout:
> > > softc->disk->d_maxsize = DFLTPHYS;
> > > softc->disk->d_sectorsize = softc->params.blksize;
> > > softc->disk->d_mediasize =
> > > (off_t)softc->params.blksize * softc->params.disksize;
> > >
> > > +/* if
> > > bailout:
> > > + * is here read requests will fail when the toc cant be read although
> > > + * CD_FLAG_VALID_MEDIA is set.
> > > + */
> > >
> > > /*
> > > * We unconditionally (re)set the blocksize each time the
> > >
> > > (I say work around because I don't know if there might be stuff
> > > somewhere that depends on the old behaviour, although thats probably
> > > unlikely; also acd(4) seems to behave similarly.)
> >
> > I have no idea about this, ...
> >
> Btw with `acd(4) seems to behave similarly' I meant a drive on acd
> _can_ read bluray.
Ok what do the -scsi folks say about this? Should it check for the
disc (or drive?) to be bluray on only accept read toc failure in
that case? Or is the patch fine as it is? As I said the old acd(4)
driver seems not to care i.e. reads from bluray discs just fine...
Wondering,
Juergen
More information about the freebsd-scsi
mailing list