Re: writing to sysfs appears to hang

From: Jens Axboe (axboe@suse.de)
Date: Wed Nov 20 2002 - 14:14:51 EST


On Wed, Nov 20 2002, Paul Larson wrote:
> On Tue, 2002-11-19 at 11:02, Jens Axboe wrote:
> > This has been in the deadline-rbtree patches for some time (uses writes
> > to sysfs, too).
> >
> > ===== fs/sysfs/inode.c 1.59 vs edited =====
> > --- 1.59/fs/sysfs/inode.c Wed Oct 30 21:27:35 2002
> > +++ edited/fs/sysfs/inode.c Fri Nov 8 14:33:59 2002
> > @@ -243,7 +243,7 @@
> > if (kobj && kobj->subsys)
> > ops = kobj->subsys->sysfs_ops;
> > if (!ops || !ops->store)
> > - return 0;
> > + return -EINVAL;
> >
> > page = (char *)__get_free_page(GFP_KERNEL);
> > if (!page)
>
> No effect, the behaviour is still the same for me.

strace the program then, what is happening? What I saw was a program
seeing write() return 0, assuming it didn't write anything, rewrite the
whole thing. Repeat.

I bet this wouldn't happen if just sysfs didn't allow write open of a
file that doesn't have any writeable bits. Smells like another sysfs
bug. Pat?

-- 
Jens Axboe

- 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/



This archive was generated by hypermail 2b29 : Sat Nov 23 2002 - 22:00:33 EST