Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Tue, 10 Sep 2002 15:04:40 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Tue, 10 Sep 2002 15:04:40 -0400 Received: from ns.virtualhost.dk ([195.184.98.160]:48830 "EHLO virtualhost.dk") by vger.kernel.org with ESMTP id ; Tue, 10 Sep 2002 15:04:39 -0400 Date: Tue, 10 Sep 2002 21:09:06 +0200 From: Jens Axboe To: Martin Knoblauch Cc: linux-kernel@vger.kernel.org Subject: Re: Oops + Aiee when mounting CDROM via ide-scsi under 2.4.20-pre5-ac4 Message-ID: <20020910190906.GI21877@suse.de> References: <200209102015.51536.martin.knoblauch@mscsoftware.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200209102015.51536.martin.knoblauch@mscsoftware.com> Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1092 Lines: 32 On Tue, Sep 10 2002, Martin Knoblauch wrote: > Hi, > > I am getting a reproducable Oops+Aiee when trying to mount a ATAPI > CDROM via the ide-scsi interface under 2.4.20-pre5-ac4. Works OK > without ide-scsi. Ok, the problem is that ide-scsi builds a request which eventually ends up going through the ide code dma mapping. ide_build_sglist() does a rq_data_dir() on the request, which BUG()'s if the command isn't an fs read or write. This actually went undetected before, because the ide code did: if (rq->cmd == READ) direction is dma from device else direction is to device and rq->cmd is IDESCSI_PC_RQ in this case. So we always mapped for dma to the device, even if that wasn't the case. Hmm, maybe just adding a single direction bit to struct request is the easy way out for 2.4. Or... I'll cook something up. -- Jens Axboe - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/