[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(toppers-users 1226) slp_tsk のE_CTXエラー



きしだです

slp_tskのソースコードを見ていて気が付いたのですが、μITRON4.0
仕様書にはエラーコードとしてE_PAR、E_RLWAI、E_TIMOUTしか無い
のですが、ソースはE_CTXが返る条件があります。

これは仕様書よりソースの方が正しい様に思います。
間違っていますでしょうか?
# 仕様書の改訂?それとも既指摘事項?

------------
以下のマクロがslp_tskサービスコール内にあります。
ディスパッチ保留状態で待ちに入る事は出来ないので、必要な処理だと
思います。
/*
 *  ディスパッチ保留状態でないかのチェック(E_CTX)
 */
#define CHECK_DISPATCH() {					\
	if (sense_context() || t_sense_lock() || !(enadsp)) {	\
		ercd = E_CTX;					\
		goto exit;					\
	}							\
}
以上、宜しくお願いいたします。