What keeps drivers/base/sys.c sysdev_show() from overrunningbuffer?

From: Paul Jackson
Date: Thu Nov 20 2003 - 18:54:40 EST


The calls in drivers/base/sys.c to sysdev_show(), which seem to resolve
to the routines node_read_cpumap() and node_read_meminfo() in node.c,
do not take any buffer count (size). They used to, by Patrick removed
the count parameter in Jan 2003, from here and other such places.

What's to keep the node_read_*() sprintf's from overrunning these
buffers?

I am developing some changes to the cpumask_t print routines, which
include using snprintf() instead of sprintf(), and watching buffer
limits. These changes are motivated by the need to handle such things
as 512 CPUs.

I couldn't plug my new routine into read_cpumap() to display the
node_dev->cpumap (a cpumask_t), for want of a buffer count.

--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <pj@xxxxxxx> 1.650.933.1373
-
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/