Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Sep 1999 13:22:23 -0400 (EDT)
From:      Christopher Sedore <cmsedore@mailbox.syr.edu>
To:        freebsd-hackers@freebsd.org
Subject:   mbufs, external storage, and MFREE
Message-ID:  <Pine.SOL.4.10.9909231316070.827-100000@rodan.syr.edu>

next in thread | raw e-mail | index | archive | help

I have the following question:  Let's say that I have a block of user
memory which I've mapped into the kernel, and would like to send on a
network socket.  I'd like to simply grab an mbuf, point to the memory as
external storage, and queue it up for transmission.  This would work fine,
except that when MFREE gets called, I have to write an deallocator that
maintains a table of all the different cases where I've done this, and do
a reverse mapping back to the original block, and then deal with sending
more, unmapping, etc.  In other words, having MFREE call a deallocator
with just the data pointer and the size is inconvenient (actually, it
would make my scenario quite inefficient given the number of mappings back
to the original block that would have to be done).

Am I missing another mechanism to handle this?  Does it not come up enough
to matter? 

-Chris



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.SOL.4.10.9909231316070.827-100000>