freebsd-nq/sys
Bosko Milekic fffd12bd72 Implement m_getm() which will perform an "all or nothing" mbuf + cluster
allocation, as required.

If m_getm() receives NULL as a first argument, then it allocates `len'
(second argument) bytes worth of mbufs + clusters and returns the chain
only if it was able to allocate everything.
If the first argument is non-NULL, then it should be an existing mbuf
chain (e.g. pre-allocated mbuf sitting on a ring, on some list, etc.) and
so it will allocate `len' bytes worth of clusters and mbufs, as needed,
and append them to the tail of the passed in chain, only if it was able
to allocate everything requested.

If allocation fails, only what was allocated by the routine will be freed,
and NULL will be returned.

Also, get rid of existing m_getm() in netncp code and replace calls to it
to calls to this new generic code.

Heavily Reviewed by: bp
2001-02-14 05:13:04 +00:00
..
alpha Doug found that doing a W1C on MCPCIA_INT_REQ just around the time you 2001-02-13 22:48:12 +00:00
amd64 Implement a unified run queue and adjust priority levels accordingly. 2001-02-12 00:20:08 +00:00
arm/include RIP <machine/lock.h>. 2001-02-11 10:44:09 +00:00
boot Fix typo: seperate -> separate. 2001-02-06 11:21:58 +00:00
cam 1. The key SSD_KEY_RECOVERED_ERROR is not an error at all and should 2001-02-11 23:46:54 +00:00
coda Mechanical change to use <sys/queue.h> macro API instead of 2001-02-04 13:13:25 +00:00
compat Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
compile
conf Merged from sys/conf/files.i386 revisoin 1.353. 2001-02-13 14:17:21 +00:00
contrib/dev Patch the reintroduced (~0 << 32) == 1 bug with a cryptic but functional 2001-02-02 08:31:50 +00:00
crypto Initial import of AES algorithm code (aka Rijndael) from KAME. 2000-10-30 11:03:32 +00:00
ddb Use macro API for <sys/queue.h> 2000-12-30 22:06:19 +00:00
dev add a format feeder for conversion from alaw to ulaw and vice versa. 2001-02-13 22:00:57 +00:00
fs Add a hook for loading of a Unicode -> char conversion routine as a kld at a 2001-02-13 11:48:31 +00:00
geom Fix a braino in ccd's clone routine. 2001-01-29 06:18:14 +00:00
gnu Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
i4b Fix typo: seperate -> separate. 2001-02-06 11:21:58 +00:00
i386 Implement a unified run queue and adjust priority levels accordingly. 2001-02-12 00:20:08 +00:00
ia64 Implement a unified run queue and adjust priority levels accordingly. 2001-02-12 00:20:08 +00:00
isa RIP <machine/lock.h>. 2001-02-11 10:44:09 +00:00
isofs/cd9660 Add a hook for loading of a Unicode -> char conversion routine as a kld at a 2001-02-13 11:48:31 +00:00
kern Implement m_getm() which will perform an "all or nothing" mbuf + cluster 2001-02-14 05:13:04 +00:00
libkern RIP <machine/lock.h>. 2001-02-11 10:44:09 +00:00
miscfs Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
modules Add pc98 support. 2001-02-10 12:52:56 +00:00
msdosfs Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
net Sync with the bridge/dummynet/ipfw code already tested in stable. 2001-02-10 00:10:18 +00:00
netatalk Mechanical change to use <sys/queue.h> macro API instead of 2001-02-04 13:13:25 +00:00
netatm * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
netgraph Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
netinet Introduce a new feature in IPFW: Check of the source or destination 2001-02-13 14:12:37 +00:00
netinet6 Fix typo: compatability -> compatibility. 2001-02-06 12:05:58 +00:00
netipx Another round of the <sys/queue.h> FOREACH transmogriffer. 2001-02-04 16:08:18 +00:00
netkey fixed possibility of panic at key_acquire(). 2001-01-14 17:25:08 +00:00
netnatm Mechanical change to use <sys/queue.h> macro API instead of 2001-02-04 13:13:25 +00:00
netncp Implement m_getm() which will perform an "all or nothing" mbuf + cluster 2001-02-14 05:13:04 +00:00
netns * Rename M_WAIT mbuf subsystem flag to M_TRYWAIT. 2000-12-21 21:44:31 +00:00
nfs Fix some problems that were introduced in revision 1.97. Instead 2001-02-09 13:24:06 +00:00
nfsclient Enable use of DHCP extensions. 2001-02-02 02:35:40 +00:00
nfsserver Fix some problems that were introduced in revision 1.97. Instead 2001-02-09 13:24:06 +00:00
ntfs Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
nwfs Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
pc98 Merged from sys/i386/isa/clock.c revision 1.169. 2001-02-13 10:35:15 +00:00
pccard Move ti1031 to the 16-bit bridge section 2001-02-07 01:16:40 +00:00
pci Change and clean the mutex lock interface. 2001-02-09 06:11:45 +00:00
posix4 Implement a unified run queue and adjust priority levels accordingly. 2001-02-12 00:20:08 +00:00
powerpc RIP <machine/lock.h>. 2001-02-11 10:44:09 +00:00
rpc
svr4 This patchset fixes a large number of file descriptor race conditions. 2000-11-18 21:01:04 +00:00
sys Implement m_getm() which will perform an "all or nothing" mbuf + cluster 2001-02-14 05:13:04 +00:00
tools Simplify this a bit so that it doesn't have to generate silly redundant 2000-12-06 06:59:38 +00:00
ufs Implement a unified run queue and adjust priority levels accordingly. 2001-02-12 00:20:08 +00:00
vm Implement a unified run queue and adjust priority levels accordingly. 2001-02-12 00:20:08 +00:00
Makefile I should know better than to touch this without testing a 'make release' 2000-08-24 18:53:09 +00:00