mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Richard Gooch <rgooch@ras.ucalgary.ca>
To: Pierre Rousselet <pierre.rousselet@wanadoo.fr>
Cc: linux-kernel@vger.kernel.org, wli@holomorphy.com
Subject: Re: 2.5.1-pre5 not easy to boot with devfs
Date: Sun, 2 Dec 2001 23:33:41 -0700	[thread overview]
Message-ID: <200112030633.fB36Xf617997@vindaloo.ras.ucalgary.ca> (raw)
In-Reply-To: <3C085FF3.813BAA57@wanadoo.fr>
In-Reply-To: <3C085FF3.813BAA57@wanadoo.fr>

Pierre Rousselet writes:
> As far as I can see,
> 
> when CONFIG_DEBUG_KERNEL is set
>   and 
> when devfsd is started at boot time
> I get an Oops when remounting, rw the root fs :
> 
> Unable to handle kernel request at va 5a5a5a5e
> ...
> EIP: 0010:[<c01516f9>] Not tainted
> ...
> Process devfsd(pid:15,stackpage=cfd33000)

Ah, ha! I've found the problem. Perversely, I wasn't able to reproduce
this bug until I booted a UP kernel. I've appended the fix. Please try
this out. I have sufficient confidence in this fix that I'll make a
proper release in a few minutes.

				Regards,

					Richard....
Permanent: rgooch@atnf.csiro.au
Current:   rgooch@ras.ucalgary.ca

diff -urN linux-2.4.17-pre2/Documentation/filesystems/devfs/ChangeLog linux/Documentation/filesystems/devfs/ChangeLog
--- linux-2.4.17-pre2/Documentation/filesystems/devfs/ChangeLog	Sat Dec  1 10:48:46 2001
+++ linux/Documentation/filesystems/devfs/ChangeLog	Sun Dec  2 23:23:12 2001
@@ -1805,3 +1805,7 @@
 
 - Do not send CREATE, CHANGE, ASYNC_OPEN or DELETE events from devfsd
   or children
+===============================================================================
+Changes for patch v199.1
+
+- Fixed bug in <devfsd_read>: was dereferencing freed pointer
diff -urN linux-2.4.17-pre2/fs/devfs/base.c linux/fs/devfs/base.c
--- linux-2.4.17-pre2/fs/devfs/base.c	Sat Dec  1 10:48:46 2001
+++ linux/fs/devfs/base.c	Sun Dec  2 23:21:10 2001
@@ -569,6 +569,9 @@
 	       Do not send CREATE, CHANGE, ASYNC_OPEN or DELETE events from
 	       devfsd or children.
   v1.2
+    20011202   Richard Gooch <rgooch@atnf.csiro.au>
+	       Fixed bug in <devfsd_read>: was dereferencing freed pointer.
+  v1.3
 */
 #include <linux/types.h>
 #include <linux/errno.h>
@@ -601,7 +604,7 @@
 #include <asm/bitops.h>
 #include <asm/atomic.h>
 
-#define DEVFS_VERSION            "1.2 (20011127)"
+#define DEVFS_VERSION            "1.3 (20011202)"
 
 #define DEVFS_NAME "devfs"
 
@@ -3243,11 +3246,17 @@
     tlen = rpos - *ppos;
     if (done)
     {
+	devfs_handle_t parent;
+
 	spin_lock (&fs_info->devfsd_buffer_lock);
 	fs_info->devfsd_first_event = entry->next;
 	if (entry->next == NULL) fs_info->devfsd_last_event = NULL;
 	spin_unlock (&fs_info->devfsd_buffer_lock);
-	for (; de != NULL; de = de->parent) devfs_put (de);
+	for (; de != NULL; de = parent)
+	{
+	    parent = de->parent;
+	    devfs_put (de);
+	}
 	kmem_cache_free (devfsd_buf_cache, entry);
 	if (ival > 0) atomic_sub (ival, &fs_info->devfsd_overrun_count);
 	*ppos = 0;

  parent reply	other threads:[~2001-12-03  8:51 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-12-01  4:43 Pierre Rousselet
2001-12-01  5:01 ` Alexander Viro
2001-12-01  5:37 ` Linus Torvalds
2001-12-01  7:01 ` Richard Gooch
2001-12-01  8:45   ` Pierre Rousselet
2001-12-02 19:40     ` Bongani Hlope
2001-12-01  9:59   ` Pierre Rousselet
2001-12-01 18:36   ` Richard Gooch
2001-12-01 20:37     ` Pierre Rousselet
2001-12-01 23:20     ` Richard Gooch
2001-12-02  1:11       ` Pierre Rousselet
2001-12-02 10:28         ` Pierre Rousselet
2001-12-02 16:59           ` Alexander Viro
2001-12-02 17:14             ` Alan Cox
2001-12-02 18:02             ` Richard Gooch
2001-12-03 12:58               ` Jens Axboe
2001-12-03 19:06               ` Richard Gooch
2001-12-03 20:52                 ` Jens Axboe
2001-12-02 22:57             ` Keith Owens
2001-12-03  4:50               ` Pierre Rousselet
2001-12-02 17:55           ` Richard Gooch
2001-12-03 19:54             ` Alexander Viro
2001-12-02  8:05       ` Pierre Rousselet
2001-12-01 23:47     ` Richard Gooch
2001-12-02  7:11       ` Pierre Rousselet
2001-12-02 21:22       ` Richard Gooch
2001-12-02  9:27     ` Pierre Rousselet
2001-12-03  6:33 ` Richard Gooch [this message]
2001-12-03  5:57   ` Pierre ROUSSELET
2001-12-03 12:16   ` Pierre Rousselet

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=200112030633.fB36Xf617997@vindaloo.ras.ucalgary.ca \
    --to=rgooch@ras.ucalgary.ca \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pierre.rousselet@wanadoo.fr \
    --cc=wli@holomorphy.com \
    /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

Powered by JetHome