From: Tejun Heo <tj@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: "Rafael J. Wysocki" <rjw@sisk.pl>,
Jens Axboe <jaxboe@fusionio.com>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Maciej Rutecki <maciej.rutecki@gmail.com>,
Andrew Morton <akpm@linux-foundation.org>,
Kernel Testers List <kernel-testers@vger.kernel.org>,
Network Development <netdev@vger.kernel.org>,
Linux ACPI <linux-acpi@vger.kernel.org>,
Linux PM List <linux-pm@lists.linux-foundation.org>,
Linux SCSI List <linux-scsi@vger.kernel.org>,
Linux Wireless List <linux-wireless@vger.kernel.org>,
DRI <dri-devel@lists.freedesktop.org>
Subject: Re: 2.6.35-rc6-git6: Reported regressions from 2.6.34
Date: Mon, 02 Aug 2010 18:32:13 +0200 [thread overview]
Message-ID: <4C56F30D.3020304@kernel.org> (raw)
In-Reply-To: <AANLkTimcH7+Bq1UEbaSU7SQpzArPgmSLegiqE13V8=CF@mail.gmail.com>
Hello, Linus.
On 08/01/2010 08:01 PM, Linus Torvalds wrote:
> This has a proposed patch. I don't know what the status of it is, though. Jens?
>
> http://marc.info/?l=linux-kernel&m=127950018204029&w=2
>
>> Bug-Entry : http://bugzilla.kernel.org/show_bug.cgi?id=16393
>> Subject : kernel BUG at fs/block_dev.c:765!
>> Submitter : Markus Trippelsdorf <markus@trippelsdorf.de>
>> Date : 2010-07-14 13:52 (19 days old)
>> Message-ID : <20100714135217.GA1797@arch.tripp.de>
>> References : http://marc.info/?l=linux-kernel&m=127911564213748&w=2
>
> This one is interesting. And I think I perhaps see where it's coming from.
>
> bd_start_claiming() (through bd_prepare_to_claim()) has two separate
> success cases: either there was no holder (bd_claiming is NULL) or the
> new holder was already claiming it (bd_claiming == holder).
>
> Note in particular the case of the holder _already_ holding it. What happens is:
>
> - bd_start_claiming() succeeds because we had _already_ claimed it
> with the same holder
>
> - then some error happens, and we call bd_abort_claiming(), which
> does whole->bd_claiming = NULL;
>
> - the original holder thinks it still holds the bd, but it has been released!
>
> - a new claimer comes in, and succeeds because bd_claiming is now NULL.
>
> - we now have two "owners" of the bd, but bd_claiming only points to
> the second one.
>
> I think bd_start_claiming() needs to do some kind of refcount for the
> nested holder case, and bd_abort_claiming() needs to decrement the
> refcount and only clear the bd_claiming field when it goes down to
> zero.
>
> I dunno. Maybe there's something else going on, but it does look
> suspicious, and the above would explain the BUG_ON().
Yeah, that definitely sounds plausible. I think the condition check
in bd_prepare_to_claim() should have been "if (whole->bd_claiming)"
instead of "if (whole->bd_claiming && whole->bd_claiming != holder)".
It doesn't make much sense to allow multiple parallel claiming
operations anyway and the comment above already says - "This function
fails if @bdev is already claimed by another holder and waits if
another claiming is in progress."
I'll try to build a test case and verify it.
Thank you.
--
tejun
next prev parent reply other threads:[~2010-08-02 16:32 UTC|newest]
Thread overview: 91+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-01 13:46 2.6.35-rc6-git6: Reported regressions from 2.6.34 Rafael J. Wysocki
2010-08-01 13:46 ` [Bug #16173] After uncompressing the kernel, at boot time, the server hangs Rafael J. Wysocki
2010-08-01 13:46 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16307] i915 in kernel 2.6.35-rc3, high number of wakeups Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16215] sysfs: cannot create duplicate filename '/class/net/bnep0' Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16221] 2.6.35-rc2-git5 -- [drm:drm_mode_getfb] *ERROR* invalid framebuffer id Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16184] Container, X86-64, i386, iptables rule Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16228] BUG/boot failure on Dell Precision T3500 (pci/ahci_stop_engine) Rafael J. Wysocki
2010-08-02 0:27 ` Bjorn Helgaas
2010-08-02 0:27 ` Bjorn Helgaas
2010-08-01 13:52 ` [Bug #16278] lvm snapshot causes deadlock in 2.6.35 Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16265] Why is kslowd accumulating so much CPU time? Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16312] WARNING: at fs/fs-writeback.c:1127 __mark_inode_dirty Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16337] general protection fault: 0000 [#1] SMP Rafael J. Wysocki
2010-08-02 1:01 ` Justin P. Mattock
2010-08-02 1:01 ` Justin P. Mattock
[not found] ` <4C5618DA.1020407-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2010-08-02 13:34 ` Rafael J. Wysocki
2010-08-02 13:34 ` Rafael J. Wysocki
2010-08-02 13:47 ` Justin P. Mattock
2010-08-01 13:52 ` [Bug #16322] WARNING: at /arch/x86/include/asm/processor.h:1005 read_measured_perf_ctrs+0x5a/0x70() Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16310] arm omap invalid module format Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16365] kernel BUG at fs/btrfs/extent-tree.c:1353 Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16380] Loop devices act strangely in 2.6.35 Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16383] Regression with e1000e from 2.6.34.1 to 2.6.35-rc5 Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16369] Yet another 2.6.35 regression (AGP)? Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16399] perf failed with kernel 2.6.35-rc Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16393] kernel BUG at fs/block_dev.c:765! Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16396] [bisected] resume from suspend freezes system Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16406] Badness with the kernel version 2.6.35-rc1-git1 running on P6 box Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16405] Brightness Adjustment on Toshiba nb305 Netbooks is non-functional Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16400] 2.6.35-rc5 inconsistent lock state Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16448] 2.6.35-rc5 panic at __br_deliver+0x64/0xe0 with kvm bridge networking Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16423] netfilter/iptables stopped logging 2.6.35-rc Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16450] MTD drivers cannot be unloaded Rafael J. Wysocki
2010-08-01 13:52 ` Rafael J. Wysocki
2010-08-01 13:52 ` [Bug #16458] Bluetooth disabled after resume Rafael J. Wysocki
2010-08-02 12:19 ` Oliver Neukum
2010-08-02 12:19 ` Oliver Neukum
2010-08-01 13:52 ` [Bug #16462] unable to connect to AP on legal channels 12/13 Rafael J. Wysocki
2010-08-02 14:58 ` Daniel J Blueman
2010-08-02 14:58 ` Daniel J Blueman
[not found] ` <AANLkTikmgrKTLtgs1+h+BkS5X6qt9bP1wMDL4Gu7L3u3-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-08-02 15:49 ` Justin P. Mattock
2010-08-02 15:49 ` Justin P. Mattock
2010-08-02 15:51 ` Justin P. Mattock
2010-08-02 15:51 ` Justin P. Mattock
2010-08-01 14:48 ` 2.6.35-rc6-git6: Reported regressions from 2.6.34 Stefan Richter
2010-08-01 14:48 ` Stefan Richter
2010-08-01 15:50 ` Rafael J. Wysocki
2010-08-01 15:50 ` Rafael J. Wysocki
2010-08-01 15:50 ` Rafael J. Wysocki
2010-08-01 14:48 ` Stefan Richter
2010-08-01 18:01 ` Linus Torvalds
2010-08-01 18:01 ` Linus Torvalds
[not found] ` <AANLkTimcH7+Bq1UEbaSU7SQpzArPgmSLegiqE13V8=CF-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-08-01 21:37 ` Rafael J. Wysocki
2010-08-01 21:37 ` Rafael J. Wysocki
2010-08-01 21:37 ` Rafael J. Wysocki
2010-08-02 16:32 ` Tejun Heo [this message]
2010-08-04 15:40 ` [PATCH block#for-2.6.36] block_dev: always serialize exclusive open attempts Tejun Heo
2010-08-04 15:40 ` Tejun Heo
2010-08-04 15:40 ` Tejun Heo
2010-08-04 15:59 ` [PATCH RESEND " Tejun Heo
2010-08-04 15:59 ` Tejun Heo
2010-08-05 9:02 ` Jens Axboe
2010-08-05 9:02 ` Jens Axboe
2010-08-05 9:02 ` Jens Axboe
[not found] ` <4C5A7E33.3060101-5c4llco8/ftWk0Htik3J/w@public.gmane.org>
2010-08-05 9:17 ` Markus Trippelsdorf
2010-08-05 9:17 ` Markus Trippelsdorf
[not found] ` <20100805091704.GA1772-joY5NpejW+Hx3b7vapvTcQ@public.gmane.org>
2010-08-05 9:20 ` Jens Axboe
2010-08-05 9:20 ` Jens Axboe
2010-08-05 9:20 ` Jens Axboe
2010-08-05 9:20 ` Jens Axboe
2010-08-05 9:20 ` Jens Axboe
2010-08-05 9:17 ` Markus Trippelsdorf
2010-08-04 15:59 ` Tejun Heo
2010-08-02 16:32 ` 2.6.35-rc6-git6: Reported regressions from 2.6.34 Tejun Heo
2010-08-01 18:01 ` Linus Torvalds
2010-08-01 19:39 ` Larry Finger
2010-08-01 19:39 ` Larry Finger
2010-08-01 19:39 ` Larry Finger
-- strict thread matches above, loose matches on Subject: below --
2010-08-01 13:46 Rafael J. Wysocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4C56F30D.3020304@kernel.org \
--to=tj@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=jaxboe@fusionio.com \
--cc=kernel-testers@vger.kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=linux-scsi@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=maciej.rutecki@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=rjw@sisk.pl \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.