Whamcloud - gitweb
wangdi [Tue, 8 Aug 2006 12:05:54 +0000 (12:05 +0000)]
Branch: b_new_cmd
1)we should set size to ost object after creating ost object,
if the object size is not zero because of truncate.
2)enable ATTR_SIZE in osd_inode_setattr, since we could set size in mds
for reg file, but not truncate.
huanghua [Tue, 8 Aug 2006 08:16:17 +0000 (08:16 +0000)]
return time to client.
wangdi [Tue, 8 Aug 2006 08:01:43 +0000 (08:01 +0000)]
Branch: b_new_cmd
add index_ops check before empty dir check in mdd_unlink
wangdi [Tue, 8 Aug 2006 07:08:51 +0000 (07:08 +0000)]
1)add is_parent check in mdd_rename_sanity_check
2)fix problems in mdd_is_parent
2)some cleanup according to nikita's comments
huanghua [Tue, 8 Aug 2006 06:54:49 +0000 (06:54 +0000)]
(1) set attributes for newly created object and its parent;
(2) only pass S_IFREG to server if it is an open intent lock.
fanyong [Tue, 8 Aug 2006 02:28:46 +0000 (02:28 +0000)]
Free buf alloced when program exit normally.
tappro [Mon, 7 Aug 2006 21:20:15 +0000 (21:20 +0000)]
- move sgid check before object creation, in __mdd_create_sanity_check(), so
updated attr will be used while object_create() after that.
tappro [Mon, 7 Aug 2006 21:17:03 +0000 (21:17 +0000)]
- fix forgotten allocation
yury [Mon, 7 Aug 2006 17:27:48 +0000 (17:27 +0000)]
- fixed stack allocations of md_op_data in llite.
huanghua [Mon, 7 Aug 2006 17:16:43 +0000 (17:16 +0000)]
(1) remove compile error in mdd
(2) remove OBD_MD_FLFLAGS flag because it is not set by OSD;
yury [Mon, 7 Aug 2006 17:07:45 +0000 (17:07 +0000)]
- in llite and liblustre ll_prepare_md_op_data() zeroes out passed @op_data to avoid garbage in it in caases caller did not zero it out. All fid allocations saved in op_data->fid2 are done after ll_prepare_md_op_data();
- in lmv replace all on stac allocations of struct md_op_data by memory allocated ones;
- in lmv fixed few memory leaks, cleanups.
huanghua [Mon, 7 Aug 2006 16:05:57 +0000 (16:05 +0000)]
remove noisy debug code
nikita [Mon, 7 Aug 2006 16:03:06 +0000 (16:03 +0000)]
mdd_object_type(): use lu_object_attr()
wangdi [Mon, 7 Aug 2006 15:31:59 +0000 (15:31 +0000)]
Branch: b_new_cmd
add rename checking for rename
huanghua [Mon, 7 Aug 2006 12:09:24 +0000 (12:09 +0000)]
unpack some necessary field for open request
huanghua [Mon, 7 Aug 2006 10:49:53 +0000 (10:49 +0000)]
(1) set attribute for newly created object.
(2) check S_ISGID for parent directory, and set it for sub-dir also.
see sanity test 6g.
fanyong [Mon, 7 Aug 2006 09:57:05 +0000 (09:57 +0000)]
Adjust 'verbose' method.
tappro [Mon, 7 Aug 2006 08:16:07 +0000 (08:16 +0000)]
- fix bugs with mdt_create_data() introduced by last commit.
fanyong [Mon, 7 Aug 2006 06:52:03 +0000 (06:52 +0000)]
Eliminate compile warning.
fanyong [Mon, 7 Aug 2006 04:03:39 +0000 (04:03 +0000)]
Fix memory leak BUG in main where key and rec be malloc, but no free, the same BUG maybe for key_opt and rec_opt. There are logic errors in function hex2dec, and fix them also.
fanyong [Mon, 7 Aug 2006 03:46:55 +0000 (03:46 +0000)]
Fix memory leak BUG in main where malloc buf, buf no free.
fanyong [Mon, 7 Aug 2006 03:42:50 +0000 (03:42 +0000)]
Add mkfs functions create_iam and iam_insert for mdt, all the mkfs work can be done by mkfs_lustre, no other mkfs script are needed. Add malloc validity check in function convert_hostnames.
fanyong [Mon, 7 Aug 2006 03:08:57 +0000 (03:08 +0000)]
mkfs_lustre.c
tappro [Sun, 6 Aug 2006 21:20:50 +0000 (21:20 +0000)]
- if fid2 exists and this was create operation, then it is not same as returned
in case no creation happens. The result was 'Stale NFS file handle' error in
some tests - 7b, 23. now 23 pass but in 7b the other nasty bug occurs.
tappro [Sun, 6 Aug 2006 21:16:50 +0000 (21:16 +0000)]
- use md_attr in mo_attr_set() and set lov ea together with inode attr.
- while attr_set() return resulting attr back
- move O_EXCL check later, because reply should contain the FID
tappro [Sat, 5 Aug 2006 22:58:09 +0000 (22:58 +0000)]
- introduce the struct md_create_spec. It contains the various type-depended
parameters for create, e.g. symlink target, eadata, parent info for cross-ref
case, etc.
Struct is allocated in thread context and filled while unpacking requests.
tappro [Sat, 5 Aug 2006 19:01:00 +0000 (19:01 +0000)]
- use lu_object_attr() instead of taking lu_header directly
- remove unused md_attr parameter from __mdd_ref_del()
- make mdd_attr_get() in mdd_unlink() after unlinking dot for directory
- rename mdd_mkname() to the mdd_name_insert() to make it consitent with API and
other layers
- move mdd_object_create() method near the mdd_create() as close related method.
tappro [Sat, 5 Aug 2006 18:55:10 +0000 (18:55 +0000)]
- define lu_object_attr() to get common object attribute
huanghua [Sat, 5 Aug 2006 17:02:50 +0000 (17:02 +0000)]
add EXEC & WRITE pretection support on file to pass sanity 43
wangdi [Sat, 5 Aug 2006 15:10:43 +0000 (15:10 +0000)]
Branch: b_new_cmd
1)still create data object in mdd_create, since they should be in the same
transaction and create data rpc (to ost) should not inside transtaction.
2)some cleanup according to nikita's comments
nikita [Sat, 5 Aug 2006 10:08:19 +0000 (10:08 +0000)]
rename create_data_object to something less ugly
nikita [Sat, 5 Aug 2006 10:04:59 +0000 (10:04 +0000)]
liblustre: add LUSTRE_POSIX_ACL_MAX_SIZE definition
nikita [Sat, 5 Aug 2006 09:09:47 +0000 (09:09 +0000)]
mdd: 0. mdd_create_data_object(): close transaction on error. 1. mdd_lov_set_md(): take transaction handle as an argument. 2. mdd_create_data_object(): start transaction.
nikita [Sat, 5 Aug 2006 09:03:56 +0000 (09:03 +0000)]
osd: add code to track lock/transaction ordering
nikita [Sat, 5 Aug 2006 09:02:36 +0000 (09:02 +0000)]
lu_object: add ->lct_exit() method to lu_context_key
wangdi [Sat, 5 Aug 2006 06:28:38 +0000 (06:28 +0000)]
Branch: b_new_cmd
1 add mti_transno_flag to check whether this req handler need transno update
for those lnk and some special node. we do not need.
2. set DISP_OPEN_OPEN in correct place
3. do not do unlink log in mdd_unlink. since it should only unlink the
metaobject. add the unlink log after open orphan is implemented.
wangdi [Sat, 5 Aug 2006 04:24:49 +0000 (04:24 +0000)]
Branch: b_new_cmd
oops, forget 1 file in the last commit
wangdi [Sat, 5 Aug 2006 04:21:54 +0000 (04:21 +0000)]
Branch: b_new_cmd
create data object later(not in mdo_create), in mdo_create, we
only create metadata object. after those check, then create the
data object.
wangdi [Sat, 5 Aug 2006 03:29:29 +0000 (03:29 +0000)]
Branch: b_new_cmd
1)add RMF_ACL as nikita's comments
2)some cleanup
huanghua [Fri, 4 Aug 2006 16:23:33 +0000 (16:23 +0000)]
fixed a defect found by nikita:
reply message may have not been packed when updating transno.
huanghua [Fri, 4 Aug 2006 16:12:10 +0000 (16:12 +0000)]
fix a defect in opening a newly created symlink:
when we have created a symlink, we do not create dentry and inode for new symlink
in original solution.
I bypass ll_symlink_raw(), but use ll_symlink() instead. this will not increase
additional RPCs as I see.
nikita [Fri, 4 Aug 2006 15:22:16 +0000 (15:22 +0000)]
cleanup: do not access ->loh_fid directly
nikita [Fri, 4 Aug 2006 14:19:22 +0000 (14:19 +0000)]
mdd: stop dt_try_as_dir() abuse: this function is for checking whether object may work as an index, NOT for checking whether it is a directory
nikita [Fri, 4 Aug 2006 14:00:42 +0000 (14:00 +0000)]
mdt: do not use mdt_thread_info for implicit parameter passing, add some consts
nikita [Fri, 4 Aug 2006 13:59:53 +0000 (13:59 +0000)]
liblustre: fix warning during user-space compilation
nikita [Fri, 4 Aug 2006 13:59:13 +0000 (13:59 +0000)]
mdt_mfd_open(): clean, use local variables
nikita [Fri, 4 Aug 2006 13:58:48 +0000 (13:58 +0000)]
lu_object: store file type (regular, directory, etc.) in lu_object_header
yury [Fri, 4 Aug 2006 13:47:39 +0000 (13:47 +0000)]
- place pill and rep_buf_size array from fld_req_handle() and seq_req_handle() into context instead of allocating then on stack.
nikita [Fri, 4 Aug 2006 12:37:35 +0000 (12:37 +0000)]
osd: fix typo
nikita [Fri, 4 Aug 2006 12:35:36 +0000 (12:35 +0000)]
req-layout: handle 0-length fields: use (-1) as variable field marker
wangdi [Fri, 4 Aug 2006 10:15:10 +0000 (10:15 +0000)]
Branch: b_new_cmd
1)add lmv getxattr md method.
2)some fixes about getxattr in mdt and mdc
wangdi [Fri, 4 Aug 2006 06:25:45 +0000 (06:25 +0000)]
Branch: b_new_cmd
1)set mdc_get_attr reply bufcount to 3(same as server side), since
different buffer count will cause different reply size, although
some msg might be zero.
2)set md size before pack reply in getattr_name
wangdi [Fri, 4 Aug 2006 02:56:28 +0000 (02:56 +0000)]
Branch: b_new_cmd
revert "reset lmm_md_size" back. since we need it
wangdi [Fri, 4 Aug 2006 01:07:56 +0000 (01:07 +0000)]
Branch: b_new_cmd
1)some fixes according to nikita's comments
2)mdt_getattr/getattr_name should not have fixed size reply, since EA_DATA is not const,
and should be set max acl size before pack reply
ericm [Thu, 3 Aug 2006 15:48:48 +0000 (15:48 +0000)]
file l_idmap.c was added on branch b_new_cmd on 2006-10-13 23:57:13 +0000
huanghua [Thu, 3 Aug 2006 15:39:23 +0000 (15:39 +0000)]
not to overwrite client passed attr
huanghua [Thu, 3 Aug 2006 15:01:13 +0000 (15:01 +0000)]
fix:
(1) open smylink file;
(2) mdt_recovery() should return error on un-connected export;
(3) mdd_unlink permission check.
wangdi [Thu, 3 Aug 2006 10:38:01 +0000 (10:38 +0000)]
Branch: b_new_cmd
change to MDSIZE and EASIZE to min size, after reorganize md size management
wangdi [Thu, 3 Aug 2006 09:56:27 +0000 (09:56 +0000)]
Branch: b_new_cmd
some req should pack the reply after set md size.
wangdi [Thu, 3 Aug 2006 08:43:58 +0000 (08:43 +0000)]
Branch: b_new_cmd
1)add get_maxsize to get max md and cookiesize
2)add upcall mechnaism from mds_obd-> mdd and mdd->cmm->mdt
to update max md and cookie size when new ost added.
wangdi [Thu, 3 Aug 2006 03:52:23 +0000 (03:52 +0000)]
Branch: b_new_cmd
1)add get_max_mdsize for getstripe
2)add mknod method in osd
3)some fixes in osd_mkfile
wangdi [Wed, 2 Aug 2006 15:21:41 +0000 (15:21 +0000)]
Branch: b_new_cmd
only do unlink log when there is lmm
yury [Wed, 2 Aug 2006 14:58:20 +0000 (14:58 +0000)]
- fixed bug with -ENOTSUPP for data stack on finalization.
nikita [Wed, 2 Aug 2006 13:45:02 +0000 (13:45 +0000)]
llite: add comments describing new readdir (not finished)
nikita [Wed, 2 Aug 2006 13:29:27 +0000 (13:29 +0000)]
osd: fix type declaration
nikita [Wed, 2 Aug 2006 13:29:04 +0000 (13:29 +0000)]
cmm: fix type declaration
yury [Wed, 2 Aug 2006 11:01:03 +0000 (11:01 +0000)]
- mostly changes according to Mike's CODEINSP;
huanghua [Wed, 2 Aug 2006 08:37:19 +0000 (08:37 +0000)]
reworked for mdt_getattr():
prepacking for reply message, and shrink later.
wangdi [Wed, 2 Aug 2006 07:06:07 +0000 (07:06 +0000)]
Branch: b_new_cmd
1) set setstripe support
2) serval fixes about mdd lov stuff.
3) should not reset la_flags in osd_inode_getattr, since it is the flags
from the client now. maybe should create a ma_flags.
yury [Tue, 1 Aug 2006 16:47:09 +0000 (16:47 +0000)]
- converting {seq|fld}_client_rpc() to new req-layout.
huanghua [Tue, 1 Aug 2006 16:15:27 +0000 (16:15 +0000)]
reworked symlink() and readlink():
(1)symlink is implemented similar to other file type;
(2)target name is written to the regular file with dbo_write();
(3)taget name is read with dbo_read().
yury [Tue, 1 Aug 2006 14:55:39 +0000 (14:55 +0000)]
- fixes in seq and fld after Mike's CODEINSP.
huanghua [Tue, 1 Aug 2006 14:16:48 +0000 (14:16 +0000)]
restore code commetted in debug mode
huanghua [Tue, 1 Aug 2006 11:34:27 +0000 (11:34 +0000)]
added symlink operation support.
wangdi [Tue, 1 Aug 2006 11:02:15 +0000 (11:02 +0000)]
Branch: b_new_cmd
oops forget commit this file
wangdi [Tue, 1 Aug 2006 08:39:39 +0000 (08:39 +0000)]
Branch: b_new_cmd
disable 24o temporarialy, since rename lock is still in progress.
wangdi [Tue, 1 Aug 2006 08:29:52 +0000 (08:29 +0000)]
Branch: b_new_cmd
fix lov set md problems
wangdi [Tue, 1 Aug 2006 00:31:14 +0000 (00:31 +0000)]
Branch: b_new_cmd
we should check whether srcid is equal to tgtid before really rename
wangdi [Mon, 31 Jul 2006 19:10:00 +0000 (19:10 +0000)]
Branch: b_new_cmd
fix stupid type in mdd_rename_unlock
wangdi [Mon, 31 Jul 2006 16:42:57 +0000 (16:42 +0000)]
Branch: b_new_cmd
remove this finish req, which will be handled later. otherwise,
it will cause oops in later req finished
huanghua [Mon, 31 Jul 2006 10:31:31 +0000 (10:31 +0000)]
fixed a bug introduced by altering xxx_attr_get() interface in mdd_create():
only do moo_attr_get() when everything is ready.
wangdi [Mon, 31 Jul 2006 09:06:13 +0000 (09:06 +0000)]
Branch: b_new_cmd
add ptlrpc setattr service
wangdi [Mon, 31 Jul 2006 08:56:03 +0000 (08:56 +0000)]
Branch: b_new_cmd
remove this unproper msg, since revalidate_it also will with IT_CREATE|IT_OPEN
so, we can not check IT_CREATE to make whether should allocate fid.
tappro [Mon, 31 Jul 2006 05:56:33 +0000 (05:56 +0000)]
attr_get is changed. It takes now md_attr() and does 'lov' getting inside
wangdi [Mon, 31 Jul 2006 00:02:39 +0000 (00:02 +0000)]
Branch:b_new_cmd
remove lov_objids and last_rcvd create in osd_mount, since they could be
created in mkfs
wangdi [Sun, 30 Jul 2006 10:33:58 +0000 (10:33 +0000)]
Branch: b_new_cmd
create last_rcvd node in osd_mount
huanghua [Sun, 30 Jul 2006 08:24:37 +0000 (08:24 +0000)]
(1): fixed a bug in mdt_close(): error handling for xattr_get();
(2): add persistent data access support for mdt: read & write mdt server data.
yury [Sat, 29 Jul 2006 08:56:16 +0000 (08:56 +0000)]
- using dt_body_ops in server sequence manager to store seq mgr state and read it from store in startup time.
wangdi [Sat, 29 Jul 2006 05:57:45 +0000 (05:57 +0000)]
Branch: b_new_cmd
add unlink log for mdd unlink
nikita [Fri, 28 Jul 2006 17:29:16 +0000 (17:29 +0000)]
readdir fixes
huanghua [Fri, 28 Jul 2006 11:34:01 +0000 (11:34 +0000)]
fixed bugs:
(1) using uninitialized variable;
(2) wrong lock type;
wangdi [Fri, 28 Jul 2006 08:40:55 +0000 (08:40 +0000)]
Branch: b_new_cmd
add tmp way to calculate lsm_object_id in mds
yury [Fri, 28 Jul 2006 08:20:30 +0000 (08:20 +0000)]
- fixes with locking. Now mkdir causes client cache flush and thus client always see valid directory content.
nikita [Thu, 27 Jul 2006 22:31:50 +0000 (22:31 +0000)]
new hash-order readdir. Initial implementation
huanghua [Thu, 27 Jul 2006 15:12:40 +0000 (15:12 +0000)]
prevent noisy message from printing
huanghua [Thu, 27 Jul 2006 15:10:00 +0000 (15:10 +0000)]
fixed some open related thing according to inspection results
huanghua [Thu, 27 Jul 2006 14:38:42 +0000 (14:38 +0000)]
(1)reworked last_link handling, using lustre_shrink_reply() to remove unused buffer;
(2) never trust the client provided la_mode except for create
huanghua [Thu, 27 Jul 2006 09:58:50 +0000 (09:58 +0000)]
rework on mdt_handle_last_unlink():
(1) extend reply message if necessary;
(2) getattr & getxattr if necessary;
huanghua [Thu, 27 Jul 2006 05:51:29 +0000 (05:51 +0000)]
we need start a transaction for every open request and return its transaction number back.
huanghua [Wed, 26 Jul 2006 15:08:27 +0000 (15:08 +0000)]
(1) make MDT replayable to eliminate mdc_close() crash on client;
(2) some some debugging code for ll_file_open()/ll_file_release();
(3) add some deugging code for transaction related functions.