Re: [UPDATED PATCH] fix memory corruption from misinterpretedbad_inode_ops return values

From: Andrew Morton
Date: Thu Jan 04 2007 - 16:10:44 EST


On Thu, 04 Jan 2007 15:04:17 -0600
Eric Sandeen <sandeen@xxxxxxxxxx> wrote:

> Andrew Morton wrote:
> > On Thu, 4 Jan 2007 20:24:12 +0000
> > Al Viro <viro@xxxxxxxxxxxxxxxx> wrote:
> >
> >> So my main issue with fs/bad_inode.c is not even cast per se; it's that
> >> cast is to void *.
> >
> > But Eric's latest patch is OK in that regard, isn't it? It might confuse
> > parsers (in fixable ways), but it is type-correct and has no casts. (Well,
> > it kinda has an link-time cast).
>
> Even if it is, I'm starting to wonder if all this tricksiness is really
> worth it for 400 bytes or so. :)
>

Ah, but it's a learning opportunity!

btw, couldn't we fix this bug with a simple old

--- a/fs/bad_inode.c~a
+++ a/fs/bad_inode.c
@@ -15,7 +15,7 @@
#include <linux/smp_lock.h>
#include <linux/namei.h>

-static int return_EIO(void)
+static long return_EIO(void)
{
return -EIO;
}
_

?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/