From owner-freebsd-alpha@FreeBSD.ORG Tue Sep 9 16:01:40 2003 Return-Path: Delivered-To: freebsd-alpha@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 84EEA16A4BF; Tue, 9 Sep 2003 16:01:40 -0700 (PDT) Received: from mail.performancedesign.no (a217-118-41-78.bluecom.no [217.118.41.78]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3FB3143F75; Tue, 9 Sep 2003 16:01:38 -0700 (PDT) (envelope-from idart@performancedesign.no) Received: from performancedesign.no (blackbird.performancedesign.no [217.118.41.78]) by mail.performancedesign.no (Postfix) with ESMTP id A454220AD0; Tue, 9 Sep 2003 22:55:44 +0200 (CEST) Sender: idart@performancedesign.no Message-ID: <3F5E3E4C.5721F53C@performancedesign.no> Date: Tue, 09 Sep 2003 22:55:41 +0200 From: Idar Tollefsen Organization: Performance Design X-Mailer: Mozilla 4.78 [en] (X11; U; FreeBSD 4.9-PRERELEASE alpha) X-Accept-Language: en MIME-Version: 1.0 To: thomas@freebsd.org References: <3F568ED4.5095458F@performancedesign.no> <16215.32222.610240.127909@grasshopper.cs.duke.edu> <3F579927.1020601@performancedesign.no> <16215.39766.415180.759716@grasshopper.cs.duke.edu> <3F5A20ED.C5DE017E@performancedesign.no> <16220.34865.620913.836921@grasshopper.cs.duke.edu> <3F5CE880.E08ABB6D@performancedesign.no> <16220.61276.946194.736750@grasshopper.cs.duke.edu> <20030908212517.GA59827@melusine.cuivre.fr.eu.org> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit cc: freebsd-alpha@freebsd.org Subject: Re: atapicam causes fatal kernel trap X-BeenThere: freebsd-alpha@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to the Alpha List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Sep 2003 23:01:40 -0000 Thomas Quinot wrote: > Uh oh. Looks like a possible culprit indeed! Idar, please test the > following patch: > > Index: atapi-cam.c > =================================================================== > RCS file: /home/ncvs/src/sys/dev/ata/atapi-cam.c,v > retrieving revision 1.10.2.5 > diff -u -r1.10.2.5 atapi-cam.c > --- atapi-cam.c 24 Aug 2003 03:26:38 -0000 1.10.2.5 > +++ atapi-cam.c 8 Sep 2003 21:12:06 -0000 > @@ -252,7 +252,11 @@ > strncpy(cpi->dev_name, cam_sim_name(sim), sizeof cpi->dev_name); > cpi->unit_number = cam_sim_unit(sim); > cpi->bus_id = cam_sim_bus(sim); > + printf ("softc->ata_ch = %p\n", softc->ata_ch); > + printf ("softc->ata_ch->device = %p\n", softc->ata_ch->device); > + printf ("ccb_h->target_id = %d\n", ccb_h->target_id); > if (softc->ata_ch && ccb_h->target_id >= 0) { > + if (ccb_h->target_id < 2) { > switch (softc->ata_ch->device[ccb_h->target_id].mode) { > case ATA_PIO1: > cpi->base_transfer_speed = 5200; > @@ -282,6 +286,7 @@ > break; > default: cpi->base_transfer_speed = 3300; > } > + } else cpi->base_transfer_speed = 3300; > } > ccb->ccb_h.status = CAM_REQ_CMP; > xpt_done(ccb); Indeed, that did the trick! Here's the output: [snip] IPsec: Initialized Security Association Processing. ata1-slave: ATAPI identify retries exceeded ad0: 9787MB [19885/16/63] at ata0-master WDMA2 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = -1 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = -1 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = 0 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = 0 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = 1 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = 1 acd0: CDROM at ata1-master PIO3 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = -1 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = -1 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 0 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 0 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 1 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 1 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = -1 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = -1 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = -1 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = -1 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = 0 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = 1 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = -1 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = -1 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 0 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 1 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = 1 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 1 softc->ata_ch = 0xfffffe0000735200 softc->ata_ch->device = 0xfffffe0000735258 ccb_h->target_id = 0 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 0 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 0 softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 0 Mounting root from ufs:/dev/ad0a cd0 at ata1 bus 0 target 0 lun 0 cd0: Removable CD-ROM SCSI-0 device softc->ata_ch = 0xfffffe0000735000 softc->ata_ch->device = 0xfffffe0000735058 ccb_h->target_id = 0 cd0: 11.000MB/s transfers cd0: Attempt to query device size failed: NOT READY, Medium not present savecore: no core dump [snip] I'm currently listening to Letfield's Afro Left (from the excellent album Leftism) trough /dev/cd0a (with the help of XMMS). I was also able to sucessfully mount the device using an ordinary ISO CD. Thank you! - IT