Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751876AbZADPPV (ORCPT ); Sun, 4 Jan 2009 10:15:21 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751772AbZADPOu (ORCPT ); Sun, 4 Jan 2009 10:14:50 -0500 Received: from mail-bw0-f21.google.com ([209.85.218.21]:34758 "EHLO mail-bw0-f21.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751205AbZADPOs (ORCPT ); Sun, 4 Jan 2009 10:14:48 -0500 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:subject:date:user-agent:cc:references:in-reply-to :mime-version:content-disposition:message-id:content-type :content-transfer-encoding; b=AcP1vG188YM19T0C2sgB06a7QdiuK99wKP2+tQBqvhkkhv3ICzqkyk3HwC6VyiLZMw WghlrSOwwGFP8niLgCTMnMVpto9QUwFQU3HX+PMFj9WjYDMlly9558LNvnrNT8DzkPQh myGPqR1MXVB6K+uvXHiHMfhOO+m9B+1VId2J4= From: Bartlomiej Zolnierkiewicz To: Grissiom Subject: Re: Kernel warning from latest 2.6.28-gitX Date: Sun, 4 Jan 2009 16:14:31 +0100 User-Agent: KMail/1.10.3 (Linux/2.6.28-next-20090102; KDE/4.1.3; i686; ; ) Cc: linux-kernel@vger.kernel.org, Larry Finger References: In-Reply-To: MIME-Version: 1.0 Content-Disposition: inline Message-Id: <200901041614.31315.bzolnier@gmail.com> Content-Type: text/plain; charset="utf-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by alpha id n04FFZwM005683 Content-Length: 4331 Lines: 7 On Sunday 04 January 2009, Grissiom wrote:> Yes, maybe I have the same problem, here is a snippet of dmesg:> > [ 0.728735] Probing IDE interface ide0...> [ 1.430414] hda: HL-DT-ST DVD+/-RW GSA-T11N, ATAPI CD/DVD-ROM drive> [ 1.760120] hda: host max PIO4 wanted PIO255(auto-tune) selected> PIO4> [ 1.760946] hda: UDMA/33 mode selected> [ 1.773525] ide0 at 0x1f0-0x1f7,0x3f6 on irq 14> [ 1.789149] ide-cd driver 5.00> [ 1.802700] ide-cd: hda: ATAPI 24X DVD-ROM DVD-R CD-R/RW drive,> 2048kB Cache> [ 1.814860] Uniform CD-ROM driver Revision: 3.20> [ 1.828677] ------------[ cut here ]------------> [ 1.831992] WARNING: at kernel/lockdep.c:2197> trace_hardirqs_on_caller+0x134/0x1a0()> [ 1.831992] Hardware name: Inspiron 1501> [ 1.831992] Modules linked in:> [ 1.831992] Pid: 0, comm: swapper Not tainted> 2.6.28-g14-rfkill-nophy-ledon-05692-g7d3b56b #57> [ 1.831992] Call Trace:> [ 1.831992] [] warn_slowpath+0x99/0xc0> [ 1.831992] [] posix_cpu_timer_set+0x3e0/0x410> [ 1.831992] [] dump_trace+0x6a/0xb0> [ 1.831992] [] validate_chain+0x41a/0x11a0> [ 1.831992] [] __lock_acquire+0x293/0xa20> [ 1.831992] [] __lock_acquire+0x293/0xa20> [ 1.831992] [] validate_chain+0x41a/0x11a0> [ 1.831992] [] validate_chain+0x41a/0x11a0> [ 1.831992] [] _spin_unlock_irq+0x20/0x40> [ 1.831992] [] trace_hardirqs_on_caller+0x134/0x1a0> [ 1.831992] [] _spin_unlock_irq+0x20/0x40> [ 1.831992] [] do_ide_request+0x40/0x570> [ 1.831992] [] __lock_acquire+0x293/0xa20> [ 1.831992] [] _spin_lock_irqsave+0x4b/0x60> [ 1.831992] [] blk_start_queueing+0x15/0x30> [ 1.831992] [] ide_do_drive_cmd+0x4a/0x70> [ 1.831992] [] cdrom_decode_status+0x116/0x380> [ 1.831992] [] cdrom_newpc_intr+0x0/0x680> [ 1.831992] [] cdrom_newpc_intr+0x43/0x680> [ 1.831992] [] cdrom_newpc_intr+0x0/0x680> [ 1.831992] [] ide_intr+0x134/0x1b0> [ 1.831992] [] handle_IRQ_event+0x20/0x50> [ 1.831992] [] handle_edge_irq+0xb5/0x120> [ 1.831992] [] do_IRQ+0x48/0x90> [ 1.831992] [] trace_hardirqs_off_thunk+0xc/0x18> [ 1.831992] [] common_interrupt+0x2c/0x34> [ 1.831992] [] default_idle+0x3d/0x60> [ 1.831992] [] c1e_idle+0x93/0x110> [ 1.831992] [] cpu_idle+0x6b/0xd0> [ 1.831992] ---[ end trace 5a56406b278561cb ]---> [ 2.204724] Driver 'sd' needs updating - please use bus_type methods Thanks for catching it, please try the patch below: From: Bartlomiej Zolnierkiewicz Subject: [PATCH] ide: fix LOCKDEP warning commit 295f00042aaf6b553b5f37348f89bab463d4a469 ("ide: don't executethe next queued command from the hard-IRQ context") overlooked thatide_do_drive_cmd() (used for REQUEST SENSE command handling) may stillinvoke do_ide_request() (->request_fn) in the hard-IRQ context throughblk_start_queueing(). This resulted in a LOCKDEP warning after commitb599bc7a1199419e122cb2e9ec6b0fa2cfbbc17b ("ide: use per-device requestqueue locks (v2)"). Since calling blk_start_queuing() in ide_do_drive_cmd() doesn't makemuch sense as the port is already marked as busy (so the execution ofthe new command will be deferred anyway) then just remove it fixingLOCKDEP warning and saving some CPU cycles at the same time. Reported-by: Larry Finger Reported-by: Grissiom Signed-off-by: Bartlomiej Zolnierkiewicz --- drivers/ide/ide-io.c | 1 - 1 file changed, 1 deletion(-) Index: b/drivers/ide/ide-io.c===================================================================--- a/drivers/ide/ide-io.c+++ b/drivers/ide/ide-io.c@@ -1197,7 +1197,6 @@ void ide_do_drive_cmd(ide_drive_t *drive spin_lock_irqsave(q->queue_lock, flags); __elv_add_request(q, rq, ELEVATOR_INSERT_FRONT, 0);- blk_start_queueing(q); spin_unlock_irqrestore(q->queue_lock, flags); } EXPORT_SYMBOL(ide_do_drive_cmd);????{.n?+???????+%?????ݶ??w??{.n?+????{??G?????{ay?ʇڙ?,j??f???h?????????z_??(?階?ݢj"???m??????G????????????&???~???iO???z??v?^?m???? ????????I?