Mbuf clusters can easily be allocated from their own pool, but I guess
you're probably right about various bits of incidental memory
allocation.

                                        -Kip

-----Original Message-----
From: Scott M. Ferris [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, December 14, 2004 5:38 PM
To: Macy, Kip
Cc: Danny Braniss; [EMAIL PROTECTED]; Peter Blok
Subject: Re: My project wish-list for the next 12 months


On Tue, 14 Dec 2004 17:05:25 -0800 (PST), Kip Macy <[EMAIL PROTECTED]>
wrote:
> > Hardware-based iSCSI HBAs solve this by having their own memory and 
> > TCP stack separate from the OS.  Software-only iSCSI initiators such

> > as linux-iscsi usually just hope it doesn't happen, and that's why I

> > don't usually recommend software-only iSCSI initiators to anyone.
> 
> How is that any better than having the SW iscsi initiator pre-allocate

> a pool of memory for its use at startup?

You could preallocate, but the hard part would be getting the OS network
stack to allocate from the iSCSI driver's preallocated memory pool,
instead of calling the usual kernel memory allocator (or more likely as
a fallback if the normal kernel allocation fails).  How do you tell the
TCP stack and NIC drivers to allocate control blocks, mbufs, and
anything else they might need from the preallocated iSCSI pool?  It's
not a problem in theory, but in practice that's not something you
usually see in the API for the network stack.

-- 
Scott M. Ferris
_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to