Messages in this thread | | | Date | 15 Jun 2004 01:44:30 +0200 | Date | Tue, 15 Jun 2004 01:44:30 +0200 | From | Andi Kleen <> | Subject | Re: NUMA API observations |
| |
On Mon, Jun 14, 2004 at 02:21:28PM -0700, Paul Jackson wrote: > Andi wrote: > > How should a user space application sanely discover the cpumask_t > > size needed by the kernel? Whoever designed that was on crack. > > > > I will probably make it loop and double the buffer until EINVAL > > ends or it passes a page and add a nasty comment. > > I agree that a loop is needed. And yes someone didn't do a very > good job of designing this interface.
I add some code to go upto a page now.
This adds a hardcoded limit of 32768 CPUs to libnuma. That's not nice, but we have to stop somewhere in case the EINVAL is returned for other reason (I really dislike this error code btw, it is near always far too ambigious...)
> > I posted a piece of code that gets a usable upper bound on cpumask_t > size, suitable for application code to size mask buffers to be used > in these system calls.
My code works basically the same, but thanks for the pointer.
-Andi - 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/
| |