X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Finclude%2Flclient.h;h=9c5677016501e893cfba9493c6f6d0cca323b51d;hb=f100d508311d16a09040a057438ee06fd9e6d7fe;hp=c79ddfca99de50b228b883be4e785d86a93121b1;hpb=9f3469f1d00099b9301ba2b90c846c924ce7796b;p=fs%2Flustre-release.git diff --git a/lustre/include/lclient.h b/lustre/include/lclient.h index c79ddfc..9c56770 100644 --- a/lustre/include/lclient.h +++ b/lustre/include/lclient.h @@ -107,6 +107,10 @@ struct ccc_io { * True iff io is processing glimpse right now. */ int cui_glimpse; + /** + * Layout version when this IO is initialized + */ + __u32 cui_layout_gen; /** * File descriptor against which IO is done. */ @@ -418,4 +422,16 @@ int lov_read_and_clear_async_rc(struct cl_object *clob); struct lov_stripe_md *ccc_inode_lsm_get(struct inode *inode); void ccc_inode_lsm_put(struct inode *inode, struct lov_stripe_md *lsm); +/** + * Data structures for LRU management on lustre client mount + */ +struct cl_client_lru { + cfs_atomic_t ccl_users; /* how many users(OSCs) of this data */ + cfs_atomic_t ccl_page_left; + unsigned long ccl_page_max; + cfs_list_t ccl_list; /* entities for lru - actually osc list */ + cfs_spinlock_t ccl_lock; /* lock for list */ + unsigned int ccl_reclaim_count; /* statistics */ +}; + #endif /*LCLIENT_H */