91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

cephfs kernel client針對dentry的操作代碼

發布時間:2021-12-17 10:00:32 來源:億速云 閱讀:226 作者:小新 欄目:云計算

這篇文章主要介紹了cephfs kernel client針對dentry的操作代碼,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

cephfs kernel client針對dentry的操作

const struct dentry_operations ceph_dentry_ops = {

        .d_revalidate = ceph_d_revalidate,

        .d_release = ceph_d_release,

        .d_prune = ceph_d_prune,

};

ceph_d_revalidate(struct dentry *dentry, unsigned int flags)    用于檢查cache中的dentry是否有效

|__調用dget_parent()函數得到dentry對應的parent dentry

|__調用d_inode()函數得到parent dentry對應的struct inode數據

|__調用dentry_lease_is_valid()函數檢查dentry lease是否有效

|__若無效

    |__得到操作碼op=CEPH_MDS_OP_LOOKUPSNAP或者CEPH_MDS_OP_LOOKUP

    |__調用ceph_mdsc_create_request()函數創建mds請求

    |__調用ceph_mdsc_do_request()函數將請求同步發送給mds進程

    |__調用ceph_dentry_lru_touch()函數將dentry添加到lru中

ceph_d_release(struct dentry *dentry)        釋放dentry時被調用

|__調用ceph_dentry()函數得到struct ceph_dentry_info數據結構

|__調用ceph_dentry_lru_del()函數將dentry從lru中刪除

|__設置dentry->d_fsdata=NULL

|__調用ceph_put_mds_session()函數釋放lease session

|__調用kmem_cache_free()函數從cache中釋放struct ceph_dentry_info數據結構

ceph_d_prune(struct dentry *dentry)        當vfs從cache中刪除dentry時調用該函數

|__調用IS_ROOT()函數檢查dentry是否包含有效的parent,若dentry是root則直接返回

|__調用d_unhashed()函數檢查dentry是否不是hashed,若是則直接返回(未hashed dentry不受影響)

|__調用ceph_dir_clear_complete()函數減少dentry->parent的struct inode中的中的i_release_count的引用計數值

感謝你能夠認真閱讀完這篇文章,希望小編分享的“cephfs kernel client針對dentry的操作代碼”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

唐山市| 璧山县| 寻乌县| 乾安县| 花垣县| 漳平市| 万载县| 平乡县| 巍山| 曲松县| 加查县| 巩义市| 揭东县| 武城县| 景泰县| 广西| 黄冈市| 克拉玛依市| 文化| 赤壁市| 南部县| 兴城市| 犍为县| 辛集市| 泰来县| 淮北市| 平原县| 乐清市| 许昌县| 利川市| 永定县| 浏阳市| 漠河县| 财经| 旬阳县| 新津县| 汤阴县| 新巴尔虎右旗| 聊城市| 广平县| 常宁市|