IBV_REG_MR(3), IBV_DEREG_MR(3)

作成日:2014.05.10

NAME

ibv_reg_mr, ibv_dereg_mr - Memory region (MR) を登録・登録削除する。

SYNOPSIS

#include <infiniband/verbs.h>

struct ibv_mr *ibv_reg_mr(struct ibv_pd *pd, void *addr,
                          size_t length, int access);

int ibv_dereg_mr(struct ibv_mr *mr);

DESCRIPTION

ibv_reg_mr() は protection domain pd に関連付けられた memory region(MR) を登録する。 addr には開始アドレスを length にはサイズを指定する。 access はメモリ保護のためにアクセス権限を指定する。 指定する値は 0 (Local Read Access のみ)か、以下の表のマクロを論理和した値を指定する。

マクロ意味
IBV_ACCESS_LOCAL_WRITEEnable Local Write Access
IBV_ACCESS_REMOTE_WRITEEnable Remote Write Access
IBV_ACCESS_REMOTE_READEnable Remote Read Access
IBV_ACCESS_REMOTE_ATOMICEnable Remote Atomic Operation Access (サポートしていれば)
IBV_ACCESS_MW_BINDEnable Memory Window Binding

IBV_ACCESS_REMOTE_WRITE または IBV_ACCESS_REMOTE_ATOMIC を指定する場合は、IBV_ACCESS_LOCAL_WRITE も指定する必要がある。

Local Read Access は常に有効である(指定は不要)。

ibv_dereg_mr()mr で示される MR を登録削除する。

RETURN VALUE

ibv_reg_mr() は成功すれば登録された MR へのポインタを返す。 失敗すれば NULL を返す。

ibv_dereg_mr() は成功すれば 0 を返す。 失敗した場合は、エラーの原因を示す値(errno と同じ)を返す。

NOTES

ibv_dereg_mr()mr に関連付けられたオブジェクトを解放せずに呼び出すと失敗することがある。

SEE ALSO

InfiniBand Verbs API Referenceibv_alloc_pd(3)ibv_post_send(3)ibv_post_recv(3)ibv_post_srq_recv(3)

AUTHORS

原文 Dotan Barak <dotanba@gmail.com>

コメント

コメントを書き込む

TOP    掲示板    戻る
Written by NAKAMURA Minoru, Email: nminoru atmark nminoru dot jp, Twitter:@nminoru_jp