Re: procfs bug (was: Re: bttv (or PCI subsystem?) still broken in

From: Alan Cox (alan@lxorguk.ukuu.org.uk)
Date: Sat May 13 2000 - 20:33:53 EDT

  • Next message: Trond Myklebust: "Proposal: int (permission*)(struct dentry *, int)"

    > > > just to let you know that bttv still panics on boot in 2.3.99-pre8.
    > > > (works as a module).
    > >
    > > Looks like a initialization order problem in procfs:
    > >
    > > diff -u --recursive --new-file v2.3.99-pre6/linux/fs/proc/generic.c linux/fs/proc/generic.c
    > > --- v2.3.99-pre6/linux/fs/proc/generic.c Tue Apr 11 15:09:23 2000
    > > +++ linux/fs/proc/generic.c Mon May 8 11:17:47 2000
    > > @@ -373,36 +373,30 @@
    > > static void proc_kill_inodes(struct proc_dir_entry *de)
    > > {
    > > struct list_head *p;
    > > - struct super_block *sb;
    > > + struct super_block *sb = proc_mnt->mnt_sb;
    > >
    > > This patch kills the kernel, proc_kill_inodes is called with proc_mnt
    > > being NULL. Can someone who knows procfs better than me please fix it?
    >
    > So put the initialization of driver after the procfs one. It's not a
    > problem in procfs, it's problem in the driver. It has no business
    > registering the stuff in procfs before the thing is initialized, to start
    > with.

    Looks like procfs is initialised way too late then. I think procfs is the
    one that needs moving, not all the drivers. In order to meet these
    requirements in fact procfs must be initialised before basically any block or
    char driver.

    Alan

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



    This archive was generated by hypermail 2b29 : Sat May 13 2000 - 20:42:47 EDT