m_clgetm 内核服务

用途

分配并连接外部缓冲区。

语法

#include <sys/types.h>
#include <sys/errno.h>
#include <sys/mbuf.h>
#include <net/net_globals.h>

int 
m_clgetm( m,  how,  size)
struct mbuf *m;
int  how;
int  size;

参数

表 1. 参数
描述
m 指定与群集相关联的 mbuf 结构。
如何 指定 M_DONTWAITM_WAIT 值。
大小 指定要附加的外部群集的大小。 任何小于 MAXALLOCSAVE 的值都有效。 如果数值较大,则必须指定 M_WAIT

描述

m_clgetm 服务会分配一个指定字节数的 mbuf 簇,并将其连接到 m 参数指示的 mbuf 结构。 如果成功,m_clgetm 服务会设置 M_EXT 标记。

执行环境

m_clgetm 内核服务可从 processinterrupt 环境中调用。

中断处理程序只能将 wait 参数指定为 M_DONTWAIT

返回值

表 2. 返回值
描述
1 指示操作成功。

如果没有空闲的 mbuf 结构,m_clgetm 内核服务会返回一个空值。