ras_control 导出的内核服务

用途

控制组件 RAS 特征。

语法

#include <sys/ras.h>
kerrno_t ras_control (
ras_block_t ras_blk,
ras_cmd_t command,
void * arg,
long argsize);

描述

ras_control 内核服务会将命令传递到 拉斯卜尔克 参数所引用的组件的回调。 如果 拉斯卜尔克 参数是未知的,请使用 ras_path_control 调用。

注:ras_control 过程中,可能会针对 RAS 基础结构对组件所做的更改启动对组件的注册者的回调。 为了锁定目的,注册者应该注意这一点 (例如,注册者不应持有回调需要的任何锁定)。

如果 拉斯卜尔克 输入参数的值为 RAS_BLOCK_NULL ,那么 ras_control 内核服务将返回无错误且不执行任何操作。

参数

描述
拉斯卜尔克 目标控制块指针。
命令 传递给回调的命令。 命令特定于给定 RAS 域,例如 "组件跟踪"。
arg 命令的可选参数。
argsize 参数的大小 (如果是缓冲区或结构)。

执行环境

ras_control 内核服务的调用环境随单个命令不同而有所变化。 特定命令的调用环境记录在该命令本身中。

返回值

ras_control 内核服务返回 0 以表示成功,并返回非零错误代码以表示失败。