On Tue, Feb 13, 2007 at 11:41:31PM +0100, Ingo Molnar ([EMAIL PROTECTED]) wrote:
> > Then limit it to a single page and use gup
> 
> 1024 (512 on 64-bit) is alot but not ALOT. It is also certainly not 
> ALOOOOT :-) Really, people will want to have more than 512 
> disks/spindles in the same box. I have used such a beast myself. For Tux 
> workloads and benchmarks we had parallelism levels of millions of 
> pending requests (!) on a single system - networking, socket limits, 
> disk IO combined with thousands of clients do create such scenarios. I 
> really think that such 'pinned pages' are a pretty natural fit for 
> sys_mlock() and RLIMIT_MEMLOCK, and since the kernel side is careful to 
> use the _inatomic() uaccess methods, it's safe (and fast) as well.

This will end up badly - I used the same approach in the early kevent
days and was proven to have swapable memory for the ring. I think it
would be much better to have userspace allocated ring and use
copy_to_user() there.

Btw, as a bit of advertisement, the whole completion part can be done
through kevent which already has ring buffer, queue operations and
non-racy updates... :)

>       Ingo

-- 
        Evgeniy Polyakov
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to