Whamcloud - gitweb
rread [Tue, 27 Aug 2002 23:59:29 +0000 (23:59 +0000)]
- replace llmount and llmountcleanup with versions that use lconf.
- remove old xml files
gord-fig [Tue, 27 Aug 2002 21:19:47 +0000 (21:19 +0000)]
Add chaos13 patch from Andreas.
adilger [Tue, 27 Aug 2002 20:32:57 +0000 (20:32 +0000)]
Revert error handling case - jumpling to out_unlink_cancel, which would seem
to be the obvious thing to do given that we are supposed to have a lock on
this file at this point, causes an oops in ldlm_lock_decref() because the
lock is NULL.
shaver [Tue, 27 Aug 2002 18:52:41 +0000 (18:52 +0000)]
* Added test_brw to .cvsignore.
adilger [Tue, 27 Aug 2002 18:31:19 +0000 (18:31 +0000)]
Add missing header for lov_packmd() definition.
adilger [Tue, 27 Aug 2002 06:30:25 +0000 (06:30 +0000)]
Remove some old code now that we have the EOF lock.
Extract the mtime and ctime from the obdo returned by punch.
adilger [Tue, 27 Aug 2002 06:25:29 +0000 (06:25 +0000)]
Whenever we get the file size from the OST, also get the blocks count at
the same time, since this is free.
adilger [Tue, 27 Aug 2002 06:22:24 +0000 (06:22 +0000)]
Don't copy the objid to/from the inode. There is nowhere that we use these
functions that we want that to happen.
rread [Mon, 26 Aug 2002 23:44:36 +0000 (23:44 +0000)]
- more careful error checking
adilger [Mon, 26 Aug 2002 23:22:47 +0000 (23:22 +0000)]
Make symlinks actually work:
all - leave room for trailing NUL, for simplicity
mds_getattr_internal - check reqbody->valid instead of repbody->valid
ll_symlink - use lli_open_sem to protect lli_symlink_name allocation/data
rread [Mon, 26 Aug 2002 22:24:35 +0000 (22:24 +0000)]
fatal error if unable to determine local address
rread [Mon, 26 Aug 2002 22:16:19 +0000 (22:16 +0000)]
- use python 1.5.x version of exception
rread [Mon, 26 Aug 2002 22:15:31 +0000 (22:15 +0000)]
- use python 1.5.x version of getopt exception
rread [Mon, 26 Aug 2002 22:11:32 +0000 (22:11 +0000)]
A network address of '*' will cause lconf to determine the local network
address automatically. This may need some tweaking to support multiple
interfaces.
adilger [Mon, 26 Aug 2002 20:19:53 +0000 (20:19 +0000)]
Remove ugliness.
adilger [Mon, 26 Aug 2002 20:19:12 +0000 (20:19 +0000)]
Remove dead functions.
Fix major thinko in filter_setattr - we were checking ia_mode instead of
ia_valid to see whether we were truncating, so were not doing proper inode
locking or returning valid data.
adilger [Mon, 26 Aug 2002 20:08:14 +0000 (20:08 +0000)]
Allow unlinking non-regular files.
Drop a lock handle when trying to unlink a file which does not exist.
adilger [Mon, 26 Aug 2002 20:06:25 +0000 (20:06 +0000)]
More of the symlink story - extract the link target _after_ inode2body,
or we overwrite the OBD_MD_LINKNAME flag.
adilger [Mon, 26 Aug 2002 20:04:56 +0000 (20:04 +0000)]
Fix minor typo in debug output.
adilger [Mon, 26 Aug 2002 18:12:44 +0000 (18:12 +0000)]
Add l_dput assertion.
shaver [Mon, 26 Aug 2002 17:36:18 +0000 (17:36 +0000)]
* Move recovery state into connection from client, and fallout therefrom.
pschwan [Mon, 26 Aug 2002 17:08:31 +0000 (17:08 +0000)]
b=596505
Finish the last oustanding EOF-lock related items. Specifically:
- ll_file_write now handles O_APPEND correctly
- ll_truncate takes a PW lock across truncation
- ll_file_seek added (based on generic_file_llseek), does an i_size refresh
braam [Mon, 26 Aug 2002 03:49:51 +0000 (03:49 +0000)]
More security architecture. Perhaps we are done for the ARCH1, but I
suspect a bit of feedback will emerge.
adilger [Fri, 23 Aug 2002 22:41:45 +0000 (22:41 +0000)]
Fix read-of-empty-page problem. Also avoid extraneous memset for cases
where we are over{writing,reading} the entire page.
adilger [Fri, 23 Aug 2002 21:50:09 +0000 (21:50 +0000)]
Make all of the obdo<->inode and obdo<->iattr copy routines take a valid
flag as a parameter, to avoid copying fields into or out of the obdo/inode
that you don't want to copy, just because oa->o_valid is set.
When we do the ll_file_size call to the OST, return the blocks count at
the same time.
Remove some of the verbosity from the locked-page writeout case. Real
fix is pending.
adilger [Fri, 23 Aug 2002 21:35:30 +0000 (21:35 +0000)]
Fix another nasty bug in ll_common_unlink - we were always setting the
inode link count to zero, instead of just decrementing it.
Use a common name for ll_inode_info variables for clarity.
adilger [Fri, 23 Aug 2002 21:23:23 +0000 (21:23 +0000)]
Reduce number of over-the-wire getattrs by half, and avoid duplicate
inodes for every file operation. This doesn't fix the dentry refcount
problem, but it is a big step in the right direction.
adilger [Fri, 23 Aug 2002 09:44:55 +0000 (09:44 +0000)]
Fix minor typo - confusing when looking at the debug log, but not a bug.
rread [Fri, 23 Aug 2002 06:25:01 +0000 (06:25 +0000)]
- Doh!
rread [Fri, 23 Aug 2002 01:41:16 +0000 (01:41 +0000)]
- add lov_pack.c to llite
- clean up ll_create_node for non-intent usage
rread [Fri, 23 Aug 2002 01:39:08 +0000 (01:39 +0000)]
- cleanup output and enhance error reporting
- change some options to be more consistent
- cleanup --help
adilger [Thu, 22 Aug 2002 23:10:42 +0000 (23:10 +0000)]
Minor cleanup.
rread [Thu, 22 Aug 2002 22:47:25 +0000 (22:47 +0000)]
- fix false leak message
rread [Thu, 22 Aug 2002 22:31:51 +0000 (22:31 +0000)]
- fix child wait
rread [Thu, 22 Aug 2002 21:53:22 +0000 (21:53 +0000)]
- fix insmod error message
rread [Thu, 22 Aug 2002 21:38:56 +0000 (21:38 +0000)]
- don't touch /proc/sys/portals/debug_path in noexec mode
gord-fig [Thu, 22 Aug 2002 21:06:28 +0000 (21:06 +0000)]
Properly quote command for tbox_absorb_log.
rread [Thu, 22 Aug 2002 20:54:47 +0000 (20:54 +0000)]
- cleanup remaining oa -> tmp brainos
adilger [Thu, 22 Aug 2002 20:50:57 +0000 (20:50 +0000)]
Minor cleanups.
pschwan [Thu, 22 Aug 2002 20:46:29 +0000 (20:46 +0000)]
- removed lock list from inode info
- added a function to cleanup unused locks on a resource
- fixed readdir
gord-fig [Thu, 22 Aug 2002 20:32:12 +0000 (20:32 +0000)]
Simplify adding manual test results to Tinderbox.
shaver [Thu, 22 Aug 2002 20:23:24 +0000 (20:23 +0000)]
* Remove noisy lock-queue debugging spew.
braam [Thu, 22 Aug 2002 19:08:27 +0000 (19:08 +0000)]
- more fixes..things work again.
braam [Thu, 22 Aug 2002 18:58:20 +0000 (18:58 +0000)]
- minor fixes trying to get the md right.
rread [Thu, 22 Aug 2002 18:36:11 +0000 (18:36 +0000)]
- stripe md fixes
braam [Thu, 22 Aug 2002 18:29:55 +0000 (18:29 +0000)]
fixes for LOV -- CAREFUL this may break the tree...
rread [Thu, 22 Aug 2002 18:06:33 +0000 (18:06 +0000)]
- always create the gdb script
pschwan [Thu, 22 Aug 2002 15:16:10 +0000 (15:16 +0000)]
Move obd_getattr from ll_lookup2 to ll_read_inode2
eeb [Thu, 22 Aug 2002 13:34:20 +0000 (13:34 +0000)]
test_brw/echo: verify == (objid != 0), highmem == (objid & 1), test default objid == 3
shaver [Thu, 22 Aug 2002 13:30:11 +0000 (13:30 +0000)]
* Chain granted locks off the export.
braam [Thu, 22 Aug 2002 06:04:36 +0000 (06:04 +0000)]
minor but important lov bug fixes Robert and I found out about.
braam [Thu, 22 Aug 2002 05:00:39 +0000 (05:00 +0000)]
- fix sending wrong attributes... Are there more of these?
pschwan [Thu, 22 Aug 2002 04:56:24 +0000 (04:56 +0000)]
- abstracted some parts of ll_size into ll_size_lock and ll_size_unlock
- added file size locking around the mds_setattr in ll_file_release
pschwan [Wed, 21 Aug 2002 23:52:51 +0000 (23:52 +0000)]
in getattr requests, get the authoritative file size from the OST
braam [Wed, 21 Aug 2002 22:36:29 +0000 (22:36 +0000)]
Change lov.xml file a little so that it works with localhost.
Remove the namespace locks from ll_file_release. Basic parallel I/O
now works, it seems.
adilger [Wed, 21 Aug 2002 22:25:14 +0000 (22:25 +0000)]
Add target data for symlinks to intent.
adilger [Wed, 21 Aug 2002 22:24:21 +0000 (22:24 +0000)]
Fix symlink creation a bit more.
Fix ll_create() error handling (at least it won't oops).
eeb [Wed, 21 Aug 2002 22:17:39 +0000 (22:17 +0000)]
optional highmem buffers in obdecho/test_brw
adilger [Wed, 21 Aug 2002 21:49:01 +0000 (21:49 +0000)]
Symlink support.
rread [Wed, 21 Aug 2002 21:06:37 +0000 (21:06 +0000)]
new option: --nosetup disables device setup/cleanup. Useful for testing
module load/unload without any device config.
shaver [Wed, 21 Aug 2002 20:49:11 +0000 (20:49 +0000)]
* Add timeouts for blocking-AST callbacks.
* Add fail_loc support for dropping a blocking AST reply or callback on the
OSC.
rread [Wed, 21 Aug 2002 20:47:24 +0000 (20:47 +0000)]
Add module loading support to lconf. By default, lconf will load and
unload the modules needed based on what devices are configured for a node.
The path to load modules from is determined based on the directory lconf is
run from. If a Makefile is found, the it is assumed lconf is in lustre/utils
and modules will be searched for in ../../lustre and ../../portals.
Module support can be turned off with --nomod, if desired.
Use option --gdb to create a gdb module script. Lconf will print the path
of the script and pause for few seconds.
rread [Wed, 21 Aug 2002 20:40:15 +0000 (20:40 +0000)]
- change default tcp port to 988
braam [Wed, 21 Aug 2002 19:30:13 +0000 (19:30 +0000)]
No dput's, the VFS does this. Some sanity with rename appears to
begin surfacing now.
braam [Wed, 21 Aug 2002 19:05:40 +0000 (19:05 +0000)]
- redo rename to instantiate d_new on the client, instead of
trying to bypass that step (and run into troubles).
braam [Wed, 21 Aug 2002 17:05:43 +0000 (17:05 +0000)]
- give inodes more metadata for objects. Per stripe we now maintain:
- id
- size
- soon: also flags indicating if we have a "size" lock on the object
- fix two lov bugs (open/close) - both used the wrong oa.
braam [Wed, 21 Aug 2002 04:13:38 +0000 (04:13 +0000)]
Change uml1 to localhost. Now it works.
braam [Wed, 21 Aug 2002 03:53:09 +0000 (03:53 +0000)]
- put Robert's file back...
braam [Wed, 21 Aug 2002 03:41:13 +0000 (03:41 +0000)]
- In ordinary writes (not O_DIRECT) do not round the data object file
size to a page boundary. Objects are now as long as they should
be.
braam [Wed, 21 Aug 2002 03:15:21 +0000 (03:15 +0000)]
- add a name to ptlrpc_svc_init in preparation for eliminating
request->rq_obd
- fix typo in osc_enqueue
pschwan [Wed, 21 Aug 2002 02:37:36 +0000 (02:37 +0000)]
- Do an additional getattr in ll_lookup2 after we get the lock, to refresh the
inode attributes
- mds_blocking_ast didn't wait for all lock holders to finish with the lock
before cancelling it; fixed.
- adjusted more of the wildly inconsistent error code reporting, this time in
mds_getattr
- removed the bad array-walking code that I introduced yesterday to osc_enqueue
adilger [Tue, 20 Aug 2002 21:47:17 +0000 (21:47 +0000)]
Fix input of objid.
adilger [Tue, 20 Aug 2002 21:02:02 +0000 (21:02 +0000)]
Test program to generate the "test_brw" pattern from user-space for a file.
eeb [Tue, 20 Aug 2002 19:41:35 +0000 (19:41 +0000)]
de-serialised getattr, brw test ioctls
adilger [Tue, 20 Aug 2002 17:47:33 +0000 (17:47 +0000)]
Pass the private descriptor pointer between preprw and commitrw for the
ost_brw_read() case also. Thanks again to Eric for finding.
rread [Tue, 20 Aug 2002 17:43:48 +0000 (17:43 +0000)]
- allow lconf to continue to run in debug mode even if acceptor and lctl
are not available.
adilger [Tue, 20 Aug 2002 17:09:54 +0000 (17:09 +0000)]
Fix missing increment for multi-page I/O cleanup/verification, found by Eric.
gord-fig [Tue, 20 Aug 2002 16:58:53 +0000 (16:58 +0000)]
Add simple test of mount and unmount.
adilger [Tue, 20 Aug 2002 06:29:31 +0000 (06:29 +0000)]
- Add create and destroy operations to lctl.
- Make the help options a bit more descriptive.
adilger [Tue, 20 Aug 2002 05:39:49 +0000 (05:39 +0000)]
Remove bogus assertion. The dentry isn't instantiated until later, and
we are guaranteed to have a valid inode if we return from ll_lookup2()
without an error code.
adilger [Tue, 20 Aug 2002 05:27:45 +0000 (05:27 +0000)]
Comment out the rename part of runtests to try and get something working.
adilger [Tue, 20 Aug 2002 04:26:26 +0000 (04:26 +0000)]
Remove call to set_page_clean() from lustre_commit_write().
gord-fig [Tue, 20 Aug 2002 03:14:32 +0000 (03:14 +0000)]
Tweak distribution files.
adilger [Mon, 19 Aug 2002 23:57:32 +0000 (23:57 +0000)]
Return an error code if the test_brw read check failed.
adilger [Mon, 19 Aug 2002 23:45:00 +0000 (23:45 +0000)]
Minor cleanups to test_brw path + debugging to see what is wrong with vectors.
rread [Mon, 19 Aug 2002 23:42:06 +0000 (23:42 +0000)]
- looks like osc_enqueue is now looking at the strip_count, so it needs to be
initialized. Not sure why osc needs this info.
rread [Mon, 19 Aug 2002 22:36:44 +0000 (22:36 +0000)]
- fix return code in mds_getattr_internal
- add support for --format flag to lmc
rread [Mon, 19 Aug 2002 22:16:56 +0000 (22:16 +0000)]
- generate some simple configs
adilger [Mon, 19 Aug 2002 21:51:33 +0000 (21:51 +0000)]
Add some basic data integrity checking to obdecho.
This puts the offset and objid into the first 16 bytes and last 16 bytes
of the bulk transfer. These are in HTON__u64() format.
The lctl command for test_brw now takes an objid instead of an obdo count,
so that you can (potentially) use lctl with test_brw on a real OBD instead
of just obdecho. That has not been tested yet.
shaver [Mon, 19 Aug 2002 21:18:28 +0000 (21:18 +0000)]
Replace ldlm_lock's connection handle with an export handle. (Always
NULL on the client side.)
adilger [Mon, 19 Aug 2002 20:46:56 +0000 (20:46 +0000)]
Fix case where rc was not set.
pschwan [Mon, 19 Aug 2002 17:50:18 +0000 (17:50 +0000)]
- Maintain a list in the ll_inode_data of data (OST) locks held by this client
- in ll_file_release, cancel any remaining locks in that list
- refactored mds_getattr_name and mds_getattr into two functions with a common
sub-function; this fixed bugs in mds_getattr, and helps prevent them from
drifting apart again
rread [Sat, 17 Aug 2002 23:16:08 +0000 (23:16 +0000)]
- writing data to lov stripes is beginning to work. still much to check
shaver [Sat, 17 Aug 2002 22:06:32 +0000 (22:06 +0000)]
* l_wait_event can now do interrupts without a timeout, if we're feeling brave.
* Big doc comment for l_wait_event.
* Only fire the timeout once from l_wait_event.
* Made timeout and the recovery-upcall path configurable via sysctl.
* Added OBD_FAIL_OSC codes for simulating simple client failure.
* Tentative rewiring of recovd into client connections, needs more thought
and then more typing. We do fire the upcall, at least.
* Use the provided cluuid instead of NULL wherever it's handy already.
* Protect (feebly) against waiting for recovery that will never happen,
in sync_io_timeout.
* Add timeouts to bulk operations in MDS and OST -- a recovery stub is now
triggered, but nothing else.
* Document the unpleasant business in osc_brw_{read,write} as pertains to
errors in the callbacks and cleanup of descriptors.
* Remove now-unused ptlrpc_check_bulk_{sent,received}.
rread [Sat, 17 Aug 2002 22:02:33 +0000 (22:02 +0000)]
Some architectures (like ppc) need linux/init.h to define things like
__init__
rread [Sat, 17 Aug 2002 00:50:58 +0000 (00:50 +0000)]
- cleanup callback data to get striping to work
adilger [Fri, 16 Aug 2002 21:25:17 +0000 (21:25 +0000)]
Add --with-linuxdir= to match howto (and be more correct).
adilger [Fri, 16 Aug 2002 20:53:08 +0000 (20:53 +0000)]
Fix yet one more hidden-by-missing-kmap compile error.
adilger [Fri, 16 Aug 2002 20:37:47 +0000 (20:37 +0000)]
Fix harmless compile warning. Not sure the code is correct, though, since
it would appear to preclude unlinking a non-regular, non-directory file.
adilger [Fri, 16 Aug 2002 16:54:31 +0000 (16:54 +0000)]
Finally appear to have a bug free "locked page" handler. Still need to
worry about multiple writer problems (I have seen this happen in dbench,
for instance). Maybe we should only use the locked-page-copy fallback
if there is the possibility of a deadlock (i.e. we already have another
page locked?).