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 - 19:33:53 EST


> > > 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 : Mon May 15 2000 - 21:00:23 EST