mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Andries.Brouwer@cwi.nl
To: alan@lxorguk.ukuu.org.uk, hch@caldera.de, torvalds@transmeta.com,
	viro@math.psu.edu
Cc: linux-kernel@vger.kernel.org
Subject: [PATCH] vxfs fix
Date: Wed, 1 Aug 2001 21:03:20 GMT	[thread overview]
Message-ID: <200108012103.VAA93890@vlet.cwi.nl> (raw)

Dear Linus, Alan, Al, Christoph, all,

If one mounts without specifying a type, mount will try
all available types. After having tried vxfs the next type
will cause
	set_blocksize: b_count 1 ...
since vxfs forgets to free a block.
The patch below adds the missing brelse().
(In fact there are more resources that are never freed there -
maybe the maintainer can have a look some time -
I only added a comment.)

When mount continues to try all types, it may try V7.
That always succeeds, there is no test for magic or so,
and after garbage has been mounted as a V7 filesystem,
the kernel crashes or hangs or fails in other sad ways.
Have not tried to debug.

Andries


--- ../linux-2.4.7/linux/fs/freevxfs/vxfs_super.c	Sat Jul 28 17:08:46 2001
+++ linux/fs/freevxfs/vxfs_super.c	Wed Aug  1 22:41:24 2001
@@ -178,7 +178,8 @@
 	}
 
 	if (rsbp->vs_version < 2 || rsbp->vs_version > 4) {
-		printk(KERN_NOTICE "vxfs: unsupported VxFS version (%d)\n", rsbp->vs_version);
+		printk(KERN_NOTICE "vxfs: unsupported VxFS version (%d)\n",
+		       rsbp->vs_version);
 		goto out;
 	}
 
@@ -221,6 +222,7 @@
 	if (vxfs_read_fshead(sbp)) {
 		printk(KERN_WARNING "vxfs: unable to read fshead\n");
 		return NULL;
+		/* BUG: lots of gets not matched by puts here */
 	}
 
 	sbp->s_op = &vxfs_super_ops;
@@ -229,6 +231,7 @@
 	
 	printk(KERN_WARNING "vxfs: unable to get root dentry.\n");
 out:
+	brelse(bp);
 	kfree(infp);
 	return NULL;
 }

             reply	other threads:[~2001-08-01 21:04 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-08-01 21:03 Andries.Brouwer [this message]
2001-08-01 21:18 ` Christoph Hellwig
2001-08-01 21:19 ` Alexander Viro
2001-08-01 22:29 ` Linus Torvalds
2001-08-02  0:15   ` Alan Cox
2001-08-02 19:15 Andries.Brouwer
     [not found] <no.id>
2001-08-02 19:41 ` Alan Cox
2001-08-02 20:57   ` Andreas Dilger
2001-08-02 20:25 Andries.Brouwer

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=200108012103.VAA93890@vlet.cwi.nl \
    --to=andries.brouwer@cwi.nl \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=hch@caldera.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@transmeta.com \
    --cc=viro@math.psu.edu \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®