Re: [PATCH] hfs: if match_strdup() fails to allocate memory in parse_options(), don't blow up the kernel.

From: Jesper Juhl
Date: Tue Apr 22 2008 - 17:21:34 EST


On 22/04/2008, Joe Perches <joe@xxxxxxxxxxx> wrote:
> On Tue, 2008-04-22 at 23:12 +0200, Jesper Juhl wrote:
> > From: Jesper Juhl <jesper.juhl@xxxxxxxxx>
>
> > diff --git a/fs/hfs/super.c b/fs/hfs/super.c
> > index 32de44e..221e314 100644
> > --- a/fs/hfs/super.c
> > +++ b/fs/hfs/super.c
> > @@ -297,6 +297,10 @@ static int parse_options(char *options, struct hfs_sb_info *hsb)
> > return 0;
> > }
> > p = match_strdup(&args[0]);
> > + if (!p) {
> > + printk(KERN_ERR "hfs: mem alloc failed in match_strdup()\n");
> > + return 0;
> > + }
> > hsb->nls_disk = load_nls(p);
> > if (!hsb->nls_disk) {
> > printk(KERN_ERR "hfs: unable to load codepage \"%s\"\n", p);
> > @@ -311,6 +315,10 @@ static int parse_options(char *options, struct hfs_sb_info *hsb)
> > return 0;
> > }
> > p = match_strdup(&args[0]);
> > + if (!p) {
> > + printk(KERN_ERR "hfs: memory allocation failed in match_strdup()\n");
> > + return 0;
> > + }
> > hsb->nls_io = load_nls(p);
> > if (!hsb->nls_io) {
> > printk(KERN_ERR "hfs: unable to load iocharset \"%s\"\n", p);
> >
>
>
> Using different strings in the printk wastes memory.
>

True, but I personally prefer being able to do grep "error message"
and hit just one source location over saving a few bytes of memory...
If Roman wants the strings to be identical I can resubmit the patch. Roman?

--
Jesper Juhl <jesper.juhl@xxxxxxxxx>
Don't top-post http://www.catb.org/~esr/jargon/html/T/top-post.html
Plain text mails only, please http://www.expita.com/nomime.html
--
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/