Date: Sun, 10 Feb 2002 05:08:37 -0500 (EST) From: Mikhail Teterin <mi@aldan.algebra.com> To: bde@zeta.org.au Cc: jhb@FreeBSD.ORG, current@FreeBSD.ORG Subject: Re: panic: bdwrite: buffer is not busy Message-ID: <200202101008.g1AA8eX08143@aldan.algebra.com> In-Reply-To: <20020210140121.D6710-100000@gamplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 10 Feb, Bruce Evans wrote:
> On Sat, 9 Feb 2002, John Baldwin wrote:
>
>> On 09-Feb-02 Mikhail Teterin wrote:
>> > While attempting to ``fdisk fd0.1440''. Or ``fdisk fd0''. Or
>> > ``newfs_msdos fd0.1440'' with or without the floppy inside :-\ With
>> > todays or Jan 3rd kernel (my previous upgrade).
>>
>> Only use fdisk on hard disks. Still it shouldn't panic. The bdwrite
>> is just extra garbage, the real panic is due to a NULL pointer
>> dereference:
>
> This is a well known bug in the device layer. I reported it on
> 2001/12/26 and fixed it locally a little later. See the thread in
> -current about "panic during fdisk'ing a md(4) device" for patches.
Fdisk I don't really need, but attempting to newfs the floppy caused the
same panic :-\ And mounting the already formatted floppy leads to
"invalid argument". Could we have this fixed soon, please? The inability
to access a floppy is a great setback for my local FreeBSD advocacy
efforts :-)
-mi
>> I'm guessing that devsw() is returning NULL here. You could add a
>> KASSERT() to this macro just before the call to d_strategy() along
>> the lines of
>>
>> KASSERT(devsw((bp)->bio_dev) != NULL, ("no devsw for bio")); \
>
> Right. From my original bug report:
>
> ! "fdisk /dev/fd0" now causes a null pointer panic in readdisklabel().
> ! This is because fdioctl() attempts to construct a (slightly
> ! wrong) device using dkmodpart(), but dkmodpart() only constructs a
> ! half-baked device since it only calls makedev(). The device is
> ! missing a devsw so DEV_STRATEGY() in readdisklabel() panics on it.
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200202101008.g1AA8eX08143>
