public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Matt Helsley <matthltc@us.ibm.com>
To: Joel Becker <Joel.Becker@oracle.com>
Cc: Linux Kernel <linux-kernel@vger.kernel.org>,
	Greg KH <gregkh@suse.de>,
	"Chandra S. Seetharaman" <sekharan@us.ibm.com>,
	Andrew Morton <akpm@osdl.org>,
	CKRM-Tech <ckrm-tech@lists.sourceforge.net>
Subject: Re: [ckrm-tech] [PATCH 0/5] Allow more than PAGESIZE data read in configfs
Date: Sat, 14 Oct 2006 18:06:26 -0700	[thread overview]
Message-ID: <1160874386.18766.691.camel@localhost.localdomain> (raw)
In-Reply-To: <20061014000951.GC2747@ca-server1.us.oracle.com>

On Fri, 2006-10-13 at 17:09 -0700, Joel Becker wrote:
> On Fri, Oct 13, 2006 at 04:37:38PM -0700, Matt Helsley wrote:
> > > 	Sure it works.  You have one per resource group.  In
> > > resource_group_make_object(), you sysfs_mkdir() the sysfs file.  There
> > 
> > 	That's the easy part. Next we need to make the pid attribute whenever a
> > new task is created. And delete it when the task dies. And move it
> > around whenever it changes groups. Is there rename() support in /sys? If
> > not, would changes to allow rename() be acceptable (I'm worried it would
> > impact alot of assumptions made in the existing code)?
> 
> 	No, you don't create a pid attribute per task.  The sysfs file
> is literally your large attribute.  So, instead of echoing a new pid to
> "/sys/kernel/config/ckrm/group1/pids", you echo to
> "/sys/ckrm/group1/pids".  To display them all, you just cat
> "/sys/ckrm/group1/pids".  It's exactly like the file you want in
> configfs, just located in a place where it is allowed.

Oh, sorry. I was still operating on the one-value-per-attribute
assumption. This indeed looks like it would work.

> > 	Consider that having two very similar (but not symlinked!) trees in
> > both /sys/ ... /res_group and /sys/kernel/config/res_group could be
> > rather confusing to userspace programmers and users alike.
> 
> 	Not really.  It's not identical (tons of attributes live in the
> configfs part but not the sysfs part), and it has a clear deliniation of
> what each does.

	Clear delineation to who? I'm not convinced this is any less confusing
to a userspace programmer than parsing a single newline between multiple
values in a configfs attribute.

> > 	It would be strange because when you rmdir a group
> > in /sys/kernel/config/res_group... a directory in /sys would also
> > disappear. Yet you can't mkdir or rmdir the /sys dirs. And to edit the
> 
> 	This is no different than tons of sysfs and procfs functionality
> today.

Yup.

> > 	There are two parts to the complexity: code complexity and the number
> > of userspace pieces to deal with. I think that in both of these
> > categories the OVPA approach is more complex. Here's how I see it:
> 
> 	By your definition, sysfs, configfs, and other fs-style control
> mechanisms are too complex.  We should all just be using ioctl() so that
> coders and users have only one namespace :-)

That's an absurd conclusion to draw from my argument that one
filesystem-based approach is less complex than another.

> > > 	You're effectively suggesting that a specific attribute type of
> > > "repeated value of type X".  No mixed types, no exploded structures,
> > > just a "list of this attr" sort of thing.  This does fit my personal
> > > requirement of avoiding a generic, abusable system.
> > 
> > Exactly.
> 
> 	How do you implement it?  Full on seq_file with restrictions
> (ops->start,stop,next,show)?

That was the plan.

Cheers,
	-Matt Helsley


  reply	other threads:[~2006-10-15  1:06 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-10 18:20 [PATCH 0/5] Allow more than PAGESIZE data read in configfs Chandra Seetharaman
2006-10-10 18:20 ` [PATCH 1/5] Fix a module count leak Chandra Seetharaman
2006-10-10 22:17   ` Joel Becker
2006-10-10 18:20 ` [PATCH 2/5] Use seq_file for read side of operations Chandra Seetharaman
2006-10-11  9:12   ` Joel Becker
2006-10-10 18:21 ` [PATCH 3/5] Change configfs_example.c to use the new interface Chandra Seetharaman
2006-10-10 18:21 ` [PATCH 4/5] Change Documentation to reflect " Chandra Seetharaman
2006-10-10 18:21 ` [PATCH 5/5] Change the existing code to use " Chandra Seetharaman
2006-10-10 20:35 ` [PATCH 0/5] Allow more than PAGESIZE data read in configfs Joel Becker
2006-10-10 21:31   ` [ckrm-tech] " Paul Menage
2006-10-10 21:58     ` Joel Becker
2006-10-10 23:13       ` Chandra Seetharaman
2006-10-11  0:15         ` Joel Becker
2006-10-11  0:49       ` Matt Helsley
2006-10-11  1:28         ` Joel Becker
2006-10-11 22:39           ` Greg KH
2006-10-11 23:26             ` Chandra Seetharaman
2006-10-12  4:17               ` Paul Jackson
2006-10-12 23:51               ` Greg KH
2006-10-13  0:16                 ` Paul Jackson
2006-10-13 23:38                   ` Matt Helsley
2006-10-13 23:40                 ` Matt Helsley
2006-10-13 23:47                   ` Paul Menage
2006-10-14  6:17                   ` Greg KH
2006-10-14 23:14                     ` Matt Helsley
2006-10-16 19:10                 ` Chandra Seetharaman
2006-10-16 20:32                   ` Paul Jackson
2006-10-16 22:29                     ` Chandra Seetharaman
2006-10-17  2:59                       ` Paul Jackson
2006-10-12  2:17             ` Matt Helsley
2006-10-12 23:54               ` Greg KH
2006-10-13  3:22                 ` Matt Helsley
     [not found]           ` <20061011220619.GB7911@ca-server1.us.oracle.com>
     [not found]             ` <1160619516.18766.209.camel@localhost.localdomain>
2006-10-12  7:08               ` Joel Becker
2006-10-12 21:44                 ` Paul Jackson
2006-10-12 22:51                   ` Joel Becker
2006-10-13  0:01                     ` Paul Jackson
2006-10-14  4:40                       ` Greg KH
2006-10-13 23:37                 ` Matt Helsley
2006-10-14  0:09                   ` Joel Becker
2006-10-15  1:06                     ` Matt Helsley [this message]
2006-10-15 19:07                     ` Paul Jackson
2006-10-16 19:33                     ` Chandra Seetharaman
2006-10-16 23:07                       ` Joel Becker
2006-10-11 20:19   ` Andrew Morton
2006-10-11 21:41     ` Joel Becker
2006-10-11 22:18     ` Joel Becker
2006-10-11 22:48       ` Andrew Morton
2006-10-11 23:27         ` Chandra Seetharaman
2006-10-14  8:01           ` Greg KH
2006-10-14 19:43             ` Andrew Morton
2006-10-14 20:10               ` Joel Becker
2006-10-16 19:24                 ` Chandra Seetharaman
2006-10-16 23:09                   ` Joel Becker
2006-10-18  0:55                     ` Chandra Seetharaman
2006-10-19 18:42                       ` Joel Becker
2006-10-16 19:16             ` Chandra Seetharaman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1160874386.18766.691.camel@localhost.localdomain \
    --to=matthltc@us.ibm.com \
    --cc=Joel.Becker@oracle.com \
    --cc=akpm@osdl.org \
    --cc=ckrm-tech@lists.sourceforge.net \
    --cc=gregkh@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sekharan@us.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox