#ifndef LCLIENT_H
#define LCLIENT_H
+#include <lustre/lustre_idl.h>
+#include <cl_object.h>
+
+enum obd_notify_event;
+struct inode;
+struct lov_stripe_md;
+struct lustre_md;
+struct obd_capa;
+struct obd_device;
+struct obd_export;
+struct page;
+
blkcnt_t dirty_cnt(struct inode *inode);
int cl_glimpse_size0(struct inode *inode, int agl);
};
/**
- * True, if \a io is a normal io, False for other (sendfile, splice*).
+ * True, if \a io is a normal io, False for other splice_{read,write}.
* must be impementated in arch specific code.
*/
int cl_is_normalio(const struct lu_env *env, const struct cl_io *io);
* we don't need to hold any lock..
*/
int cob_transient_pages;
- /**
- * Number of outstanding mmaps on this file.
- *
- * \see ll_vm_open(), ll_vm_close().
- */
- cfs_atomic_t cob_mmap_cnt;
+ /**
+ * Number of outstanding mmaps on this file.
+ *
+ * \see ll_vm_open(), ll_vm_close().
+ */
+ atomic_t cob_mmap_cnt;
/**
* various flags
const struct cl_object *obj, struct ost_lvb *lvb);
int ccc_conf_set(const struct lu_env *env, struct cl_object *obj,
const struct cl_object_conf *conf);
-int ccc_page_is_under_lock(const struct lu_env *env,
- const struct cl_page_slice *slice, struct cl_io *io);
int ccc_fail(const struct lu_env *env, const struct cl_page_slice *slice);
void ccc_transient_page_verify(const struct cl_page *page);
int ccc_transient_page_own(const struct lu_env *env,
* layer for recovery purposes.
*/
struct cl_client_cache {
- cfs_atomic_t ccc_users; /* # of users (OSCs) */
+ atomic_t ccc_users; /* # of users (OSCs) */
cfs_list_t ccc_lru; /* LRU of cached clean pages */
spinlock_t ccc_lru_lock; /* lock for list */
- cfs_atomic_t ccc_lru_left; /* # of LRU entries available */
+ atomic_t ccc_lru_left; /* # of LRU entries available */
unsigned long ccc_lru_max; /* Max # of LRU entries */
unsigned int ccc_lru_shrinkers; /* # of threads shrinking */
- cfs_atomic_t ccc_unstable_nr; /* # of pages pinned */
+ atomic_t ccc_unstable_nr; /* # of pages pinned */
wait_queue_head_t ccc_unstable_waitq; /* Signaled on BRW commit */
};
+enum {
+ LUSTRE_OPC_MKDIR = 0,
+ LUSTRE_OPC_SYMLINK = 1,
+ LUSTRE_OPC_MKNOD = 2,
+ LUSTRE_OPC_CREATE = 3,
+ LUSTRE_OPC_ANY = 5
+};
+
+enum op_cli_flags {
+ CLI_SET_MEA = 1 << 0,
+ CLI_RM_ENTRY = 1 << 1,
+ CLI_HASH64 = 1 << 2,
+ CLI_API32 = 1 << 3,
+ CLI_MIGRATE = 1 << 4,
+ CLI_NEXT_ENTRY = 1 << 5,
+};
+
#endif /*LCLIENT_H */