X-Git-Url: https://git.whamcloud.com/?a=blobdiff_plain;f=lustre%2Finclude%2Flclient.h;h=1883df6437712085185a2dd6532b798cea6c32ff;hb=6697349ea92c2c61a40b8f23655f66de60ca1501;hp=529d198fa3acd1a6ccafefb3957256d2dfabc090;hpb=6e3ec5812ebd1b5ecf7cae584f429b013ffe7431;p=fs%2Flustre-release.git diff --git a/lustre/include/lclient.h b/lustre/include/lclient.h index 529d198..1883df6 100644 --- a/lustre/include/lclient.h +++ b/lustre/include/lclient.h @@ -26,7 +26,7 @@ * GPL HEADER END */ /* - * Copyright 2008 Sun Microsystems, Inc. All rights reserved. + * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. * Use is subject to license terms. */ /* @@ -48,15 +48,15 @@ int cl_glimpse_lock(const struct lu_env *env, struct cl_io *io, struct inode *inode, struct cl_object *clob); /** - * Locking policy for truncate. + * Locking policy for setattr. */ -enum ccc_trunc_lock_type { +enum ccc_setattr_lock_type { /** Locking is done by server */ - TRUNC_NOLOCK, + SETATTR_NOLOCK, /** Extent lock is enqueued */ - TRUNC_EXTENT, + SETATTR_EXTENT_LOCK, /** Existing local extent lock is used */ - TRUNC_MATCH + SETATTR_MATCH_LOCK }; @@ -87,9 +87,9 @@ struct ccc_io { union { struct { - int cui_locks_released; - enum ccc_trunc_lock_type cui_local_lock; - } trunc; + int cui_locks_released; + enum ccc_setattr_lock_type cui_local_lock; + } setattr; } u; /** * True iff io is processing glimpse right now. @@ -344,9 +344,8 @@ cfs_page_t *cl2vm_page (const struct cl_page_slice *slice); struct inode *ccc_object_inode(const struct cl_object *obj); struct ccc_object *cl_inode2ccc (struct inode *inode); -int cl_setattr_do_truncate(struct inode *inode, loff_t size, - struct obd_capa *capa); -int cl_setattr_ost(struct inode *inode, struct obd_capa *capa); +int cl_setattr_ost(struct inode *inode, const struct iattr *attr, + struct obd_capa *capa); struct cl_page *ccc_vmpage_page_transient(cfs_page_t *vmpage); int ccc_object_invariant(const struct cl_object *obj); @@ -355,7 +354,8 @@ void cl_inode_fini(struct inode *inode); int cl_local_size(struct inode *inode); __u16 ll_dirent_type_get(struct lu_dirent *ent); -ino_t cl_fid_build_ino(const struct lu_fid *fid); +__u64 cl_fid_build_ino(const struct lu_fid *fid); +__u32 cl_fid_build_ino32(const struct lu_fid *fid); __u32 cl_fid_build_gen(const struct lu_fid *fid); #ifdef INVARIANT_CHECK