w_setattr カーネル・サービス

目的

ウォッチドッグ・タイマーの属性を設定します。

構文

#include <sys/watchdog.h>
#include <sys/kerrno.h>

kerrno_t w_setattr(struct watchdog *w, char attr)

パラメーター

項目 説明
w ウォッチドッグ・タイマー構造を指定します。
attr 設定する属性のビット・マスク。 サポートされるフラグは次のとおりです。
WD_ATTR_MOVE_OK
タイマーが 1 つの CPU から別の CPU に移行できるようにします。

説明

W_SETTR カーネル・サービスは、指定されたウォッチドッグ・タイマーの属性を設定します。 WD_ATTR_MOVE_OK 属性は、タイマー満了ハンドラーが呼び出されるプロセッサーに呼び出し元が依存していない場合に設定する必要があります。 この属性を使用すると、システムは、プロセッサー・フォールディングの有効性を向上させるために、必要に応じてタイマーを 1 つのプロセッサーから別のプロセッサーに移動することができます。 この属性が設定されている場合、所有プロセッサーが折り返されると、関連付けられたウォッチドッグ・タイマーが別のプロセッサーに移動されます。

W_SETTR カーネル・サービスは、 w_init () カーネル・サービスの後、 w_start () カーネル・サービスの前に呼び出す必要があります。 そうしないと、 W_SETTR カーネル・サービスが失敗する可能性があります。

実行環境

W_SETTR カーネル・サービスは、 処理 環境または 割り込み 環境のいずれかから呼び出すことができます。

戻り値

項目 説明
0 指定された属性は正常に設定されました。
<0 指定された属性は設定されませんでした。 失敗は、以下のいずれかの値に設定された戻り値で示されます。

EINVAL_W_SETATTR_EYEC: 無効な目印が検出されました。

EINVAL_W_SETATTR_ATTR: 無効な属性フラグが検出されました。