Project

General

Profile

Bug #1459

panic in msdosfs

Added by polachok almost 12 years ago. Updated almost 12 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:

Description

I get a panic while trying to read a file from msdos filesystem with latest
master.

http://omploader.org/vMjZzaw

History

#1

Updated by qhwt+dfly almost 12 years ago

On Fri, Aug 21, 2009 at 12:30:30AM +0000, Alexander Polakov (via DragonFly issue tracker) wrote:

New submission from Alexander Polakov <>:

I get a panic while trying to read a file from msdos filesystem with latest
master.

http://omploader.org/vMjZzaw

Can you apply this patch, compile and reinstall the kernel, and
see how it it proceeds?

diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c
index 8217817..3758510 100644
--- a/sys/kern/vfs_bio.c
+++ b/sys/kern/vfs_bio.c
@ -887,7 +887,7 @ breadn(struct vnode *vp, off_t loffset, int size, off_t *raoffset,
rabp = getblk(vp, *raoffset, *rabsize, 0, 0);

if ((rabp->b_flags & B_CACHE) == 0) {
- rel_mplock();
+ get_mplock();
rabp->b_flags &= ~(B_ERROR | B_EINTR | B_INVAL);
rabp->b_cmd = BUF_CMD_READ;
vfs_busy_pages(vp, rabp);

----------
messages: 7104
nosy: polachok
status: unread
title: panic in msdosfs

_____________________________________________
DragonFly issue tracker <>
<http://bugs.dragonflybsd.org/issue1459>
_____________________________________________

#2

Updated by corecode almost 12 years ago

YONETANI Tomokazu wrote:

On Fri, Aug 21, 2009 at 12:30:30AM +0000, Alexander Polakov (via DragonFly issue tracker) wrote:

New submission from Alexander Polakov <>:

I get a panic while trying to read a file from msdos filesystem with latest
master.

http://omploader.org/vMjZzaw

Can you apply this patch, compile and reinstall the kernel, and
see how it it proceeds?

diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c
index 8217817..3758510 100644
--- a/sys/kern/vfs_bio.c
+++ b/sys/kern/vfs_bio.c
@ -887,7 +887,7 @ breadn(struct vnode *vp, off_t loffset, int size, off_t *raoffset,
rabp = getblk(vp, *raoffset, *rabsize, 0, 0);

if ((rabp->b_flags & B_CACHE) == 0) {
- rel_mplock();
+ get_mplock();

haha :)

#3

Updated by dillon almost 12 years ago

Doh. Oh please commit that :-)

-Matt
Matthew Dillon
&lt;&gt;
#4

Updated by polachok almost 12 years ago

resolved.

Also available in: Atom PDF