Re: [PATCH] 2.5.43 CSA, Job, and PAGG

Christoph Hellwig
2002-10-21T12:22:22Z

On Fri, Oct 18, 2002 at 02:05:46PM -0500, John Hesterberg wrote:
> > +
> > +/* List of pagg (process aggregate) attachments */
> > + struct pagg_list_s pagg_list;
> > };
> >
> > You don't need the header for an unreferences structure pointer.
> > And sched.h already includes far to many other headers..
>
> It's not a structure pointer, it's the structure itself.

Umm, of course your right - sorry for the thinko (seeo? :))

> > +/* Host ID for the localhost */
> > +static uint32_t jid_hid = DISABLED;
> > +
> > +static char *hid = NULL;
> > +MODULE_PARM(hid, "s");
> >
> > What's this for?
>
> A host id (hid) is used as the top 32 bits of the job id.
> It gets initialized when you load the module, and can be
> changed with the JOB_SETHID call.

Any reason it's a char, not some interger?

> > Umm, no, ioctl on procfs is not the proper interfaces. It looks like
> > all ioctl subcalls were syscalls initially (on unicos?), so doing the
> > as actual syscalls would at least be better. Defining a proper
> > ascii file interface (i.e. echo start <arg1> <arg2> <etc.. > file)
> > sounds better.
>
> What we *really* want would be a new syscall, but we can't lock down
> the syscall number in an external patch. If we get integrated by Linus,
> then we'd love to cut over to a new syscall. For now, the ioctl on
> /proc behaves almost identically to how a new syscall would,
> in that we pass down arguments in binary format, can copyout
> results, etc. This is what the code on both ends is expecting.

Well, no. It's not one syscall but many - and we really don't like adding
new multiplexer syscalls to linux, even less then normal ones.

You might want to look at fs/nfsd/nfsctl.c in 2.5 for a proper fs-based
interface for this.