Re: Externalize SLIT table

Christoph Hellwig
2004-11-06T13:07:44Z

On Sat, Nov 06, 2004 at 01:48:38PM +0100, Andi Kleen wrote:
> On Sat, Nov 06, 2004 at 11:50:29AM +0000, Christoph Hellwig wrote:
> > On Fri, Nov 05, 2004 at 10:44:49AM -0600, Jack Steiner wrote:
> > > > > + for (i = 0; i < numnodes; i++)
> > > > > + len += sprintf(buf + len, "%s%d", i ? " " : "", node_distance(nid, i));
> > > >
> > > > Can this overflow the space allocated for buf?
> > >
> > >
> > > Good point. I think we are ok for now. AFAIK, the largest cpu count
> > > currently supported is 512. That gives a max string of 2k (max of 3
> > > digits + space per cpu).
> >
> > I always wondered why sysfs doesn't use the seq_file interface that makes
> > life easier in the rest of them kernel.
>
> Most fields only output a single number, and seq_file would be
> extreme overkill for that.

Personally I think even a:

static void
show_foo(struct device *dev, struct seq_file *s)
{
seq_printf(s, "blafcsvsdfg\n");
}

static ssize_t
show_foo(struct device *dev, char *buf)
{
return snprintf(buf, 20, "blafcsvsdfg\n");
}

would be a definitive improvement.