lkml.org 
[lkml]   [2005]   [Oct]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [TRIVIAL] Error checks omitted in init_tmpfs() in mm/tiny-shmem.c
    On Mon, Oct 24, 2005 at 03:56:47AM -0500, Hareesh Nagarajan wrote:
    > Matt Mackall wrote:
    > >On Mon, Oct 24, 2005 at 12:29:45AM -0500, Hareesh Nagarajan wrote:
    > >>The existing code in init_tmpfs() in mm/tiny-shmem.c does not handle the
    > >>cases when the calls to register_filesystem() and kern_mount() fail.
    > >>This patch adds those checks.
    > >
    > >Hmm. Did you actually encounter this?
    >
    > No, I haven't. I was just reading the source code when I chanced upon
    > these trivial error checking omissions.
    >
    > >I'd rather use BUG_ON. Passing up errors is only useful when the code
    > >above can and will do something useful with the information.
    >
    > [ Snip ]
    >
    > >And what could the higher level, which is simply looping through init
    > >functions, do to handle the error? Retry? Print a warning? Better to
    > >stop everything outright when we encounter a problem we expect should
    > >never happen so it doesn't go by undiagnosed.
    >
    > Makes sense. New patch attached.

    A couple more comments..

    > Signed-off-by: Hareesh Nagarajan <hnagar2@gmail.com>

    > --- linux-2.6.13.4/mm/tiny-shmem.c 2005-10-10 13:54:29.000000000 -0500
    > +++ linux-2.6.13.4-edit/mm/tiny-shmem.c 2005-10-24 03:43:38.614071000 -0500
    > @@ -31,12 +31,18 @@
    >
    > static int __init init_tmpfs(void)
    > {
    > - register_filesystem(&tmpfs_fs_type);
    > + int error;
    > +
    > + error = register_filesystem(&tmpfs_fs_type);
    > + BUG_ON(error);

    Can we just do BUG_ON(register_filesystem() != 0)?

    Strictly speaking, the != 0 is redundant, but as this goes slightly
    against the grain of normal usage, it's a good indicator of intent.

    > +
    > #ifdef CONFIG_TMPFS
    > devfs_mk_dir("shm");
    > #endif
    > shm_mnt = kern_mount(&tmpfs_fs_type);
    > - return 0;
    > + BUG_ON(IS_ERR(shm_mnt));
    > +
    > + return error;

    We can never return non-zero here. Returning error implies we can, so
    it's confusing.

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

    \
     
     \ /
      Last update: 2005-10-24 22:49    [W:0.029 / U:0.400 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site