Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 1 Jun 1999 09:10:03 -0700 (PDT)
From:      "Kenneth D. Merry" <ken@plutotech.com>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/11969: VM_fault with mmap'd CDROM data.
Message-ID:  <199906011610.JAA63235@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/11969; it has been noted by GNATS.

From: "Kenneth D. Merry" <ken@plutotech.com>
To: rivers@dignus.com
Cc: FreeBSD-gnats-submit@FreeBSD.ORG
Subject: Re: kern/11969: VM_fault with mmap'd CDROM data.
Date: Tue, 1 Jun 1999 10:02:20 -0600 (MDT)

 Thomas David Rivers wrote...
 > 
 > >Number:         11969
 > >Category:       kern
 > >Synopsis:       VM_fault with mmap'd CDROM data.
 > >Confidential:   no
 > >Severity:       serious
 > >Priority:       medium
 > >Responsible:    freebsd-bugs
 > >State:          open
 > >Quarter:        
 > >Keywords:       
 > >Date-Required:
 > >Class:          sw-bug
 > >Submitter-Id:   current-users
 > >Arrival-Date:   Mon May 31 18:20:01 PDT 1999
 > >Closed-Date:
 > >Last-Modified:
 > >Originator:     Thomas David Rivers
 > >Release:        FreeBSD 3.1-RELEASE i386
 > >Organization:
 > Dignus, LLC
 > >Environment:
 > 
 > FreeBSD lakes.dignus.com 3.1-RELEASE FreeBSD 3.1-RELEASE #0: Sat Mar  6 17:34:47 EST 1999     rivers@lakes.dignus.com:/usr/src/sys/compile/LAKES  i386
 > 
 > Pentium 150 - 32 meg of memory, AHA2940 SCSI card, HP 6020i CDROM.
 > 
 > 
 > >Description:
 > 
 >   Sometimes, when using cmp(1) or cp(1) on data read from a CD, I
 >  encounter the following:
 > 
 > May 31 21:07:20 lakes su: rivers to root on /dev/ttyp2
 > (cd0:ahc0:0:4:0): READ(10). CDB: 28 0 0 2 9b dc 0 0 1 0 
 > (cd0:ahc0:0:4:0): VOLUME OVERFLOW info:29bdc asc:aa,0
 > (cd0:ahc0:0:4:0): Vendor Specific ASC
 > (cd0:ahc0:0:4:0): cddone: got error 0x5 back
 > vm_fault: pager read error, pid 388 (cmp)
 > May 31 21:07:33 lakes /kernel: pid 388 (cmp), uid 500: exited on signal 11
 > 
 >   However, cat(1) will read the data just fine, and it seems to be
 > correct.
 > 
 >   I believe cmp(1) and cp(1) both mmap() the source files, whilc cat(1)
 > does not - does this imply mmap()ing CD-ROM data has a problem?
 > 
 >   Also - after encountering this, an umount of the CD-ROM will
 > panic and crash the system.
 
 The problem here may be two-fold.  First, your CDROM drive is barfing on
 the read command above.  I don't know why that's happening, especially
 since there's a vendor-specific ASC and ASCQ.  If you can get the SCSI
 specs for that drive, you may be able to figure out what's going on.
 
 The second problem is that the upper level code may not be handling the
 error from the CD driver when it gets a bad block.
 
 For what it's worth, the CD driver doesn't handle the mmaping of the files
 on the filesystem.  That's handled by the upper-level code somewhere.  (You
 can tell I'm an expert on that code, can't you? :)
 
 If you can get a stack trace from the panic, someone might be interested in
 taking a look at it.
 
 
 Ken
 -- 
 Kenneth Merry
 ken@plutotech.com
 


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199906011610.JAA63235>