Re: [PATCH -mmotm] fs/sysfs/file.c d_path fix

From: Jan Blunck
Date: Mon Feb 18 2008 - 11:44:40 EST


On Sun, Feb 17, Christoph Hellwig wrote:

> On Sat, Feb 16, 2008 at 02:12:05PM -0500, Erez Zadok wrote:
> > diff --git a/fs/sysfs/file.c b/fs/sysfs/file.c
> > index 02223e2..a57b024 100644
> > --- a/fs/sysfs/file.c
> > +++ b/fs/sysfs/file.c
> > @@ -329,9 +329,11 @@ static int sysfs_open_file(struct inode *inode, struct file *file)
> > struct sysfs_ops *ops;
> > int error = -EACCES;
> > char *p;
> > + struct path sysfs_path;
> >
> > - p = d_path(file->f_dentry, sysfs_mount, last_sysfs_file,
> > - sizeof(last_sysfs_file));
> > + sysfs_path.dentry = file->f_dentry;
> > + sysfs_path.mnt = sysfs_mount;
> > + p = d_path(&sysfs_path, last_sysfs_file, sizeof(last_sysfs_file));
>
> A d_path(file->f_path, ..); should do it, but I'd really like to know
> what sysfs crowd was smoking when adding a d_path in ->open. Guys,
> please explain what's going on here.
>

This is from gregkh-driver-sysfs-crash-debugging.patch which is only in -mm I
guess.
--
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/