Whamcloud - gitweb
adilger [Thu, 10 Oct 2002 07:25:20 +0000 (07:25 +0000)]
Still call mdc_close() if there was an error during obd_close(), or we
will get a leak on the MDS for open file handles until that connection
is closed.
Don't revalidate the inode size if we have no objects allocated yet.
A note for Mike.
rread [Thu, 10 Oct 2002 01:19:45 +0000 (01:19 +0000)]
* new test case (commented out) for bug #620096
adilger [Wed, 9 Oct 2002 23:42:00 +0000 (23:42 +0000)]
Workaround in lctl create for BA OST bug.
adilger [Wed, 9 Oct 2002 23:29:10 +0000 (23:29 +0000)]
Add UID/GID to lctl create, to work around BA OST bug.
shaver [Wed, 9 Oct 2002 21:15:22 +0000 (21:15 +0000)]
So. When we replay a request, we go through request_out_callback again,
which is called when portals informs us that our message has been sent.
That will decref the request again, and unless it's been bumped for
each resend/replay, we will prematurely free it. In addition to the
obvious evil of freeing it (which will take it off the sending_head
before we're really done with it), it also causes a deadlock when
free_req attempts to acquire req->rq_connection->c_lock -- which is
already held by the recovery replay loop!
This should make things better, and might even fix the MDS failover
test.
adilger [Wed, 9 Oct 2002 20:11:47 +0000 (20:11 +0000)]
Remove verbose debugging added recently.
pschwan [Wed, 9 Oct 2002 19:49:41 +0000 (19:49 +0000)]
b=619803
Unset cookie when freeing lock, check cookie before deref in handle2lock
adilger [Wed, 9 Oct 2002 08:49:30 +0000 (08:49 +0000)]
Don't LBUG on OOM in setup.
Cosmetic fixes.
adilger [Tue, 8 Oct 2002 21:48:05 +0000 (21:48 +0000)]
Add BA OST UUID extraction to MCR config script.
adilger [Tue, 8 Oct 2002 21:47:24 +0000 (21:47 +0000)]
Add an error message if we are trying to use a zero-length rpc buffer.
adilger [Tue, 8 Oct 2002 21:46:41 +0000 (21:46 +0000)]
Fix leak_finder.pl script to work with new CDEBUG() format.
adilger [Tue, 8 Oct 2002 21:45:33 +0000 (21:45 +0000)]
Workaround in ll_create for BA OST hang bug - we were not setting the
o_uid and o_gid fields to obd_create (nor the corresponding o_valid flags)
and the BA OSTs did like that one bit, and reset themselves (hence timeout).
For now, we set the uid = gid = 0 always, to avoid issues if the file
permissions are changed on the MDS (we would not see a corresponding
permission change on the OST). Need to revisit this when we do kerberos
security properly.
rread [Tue, 8 Oct 2002 18:31:42 +0000 (18:31 +0000)]
* update with the portals version, so builds work on alpha
adilger [Tue, 8 Oct 2002 07:23:36 +0000 (07:23 +0000)]
Comment out unused lock.
rread [Tue, 8 Oct 2002 06:52:45 +0000 (06:52 +0000)]
* Protect d_it with a semaphore, Part I
* this patch uses the new semaphore in the all places it will be needed, but
does not change where d_it is being set.
rread [Tue, 8 Oct 2002 06:27:04 +0000 (06:27 +0000)]
* set l_resource to NULL when it is freed
pschwan [Tue, 8 Oct 2002 03:33:15 +0000 (03:33 +0000)]
b=619803
Comment out spinlocks until tomorrow; they didn't fix the bug (I didn't
really think they would, but you have to hope), and they introduced a lock
inversion.
pschwan [Mon, 7 Oct 2002 23:48:11 +0000 (23:48 +0000)]
b=619803
Add a spinlock around lock creation, deletion, and handle2lock.
adilger [Mon, 7 Oct 2002 22:10:38 +0000 (22:10 +0000)]
More debugging.
adilger [Mon, 7 Oct 2002 20:58:34 +0000 (20:58 +0000)]
A better fix from Eric.
adilger [Mon, 7 Oct 2002 20:56:59 +0000 (20:56 +0000)]
Revert last change, it is broken.
adilger [Mon, 7 Oct 2002 20:52:52 +0000 (20:52 +0000)]
Temporary fix to avoid lprocfs crashing.
This needs to be cleaned up to have something like:
#define LPROCFS_GROUP_LAST {"0", NULL, NULL },
#define LPROCFS_DIR_LAST LPROCFS_GROUP_LAST
adilger [Mon, 7 Oct 2002 18:52:10 +0000 (18:52 +0000)]
Add some debugging to try and catch OST locking.
adilger [Mon, 7 Oct 2002 18:51:26 +0000 (18:51 +0000)]
Use given client.txt file.
rread [Mon, 7 Oct 2002 17:37:38 +0000 (17:37 +0000)]
* fix compile on older gcc
rread [Mon, 7 Oct 2002 17:02:52 +0000 (17:02 +0000)]
* ensure the PATH in the environment includes the elements in DEFAULT_PATH
pschwan [Mon, 7 Oct 2002 16:46:26 +0000 (16:46 +0000)]
b=614459
b=618273
Peter opened my eyes to a serious problem with the OSC, which was the cause of
the O_APPEND extent bug.
pschwan [Sun, 6 Oct 2002 00:24:44 +0000 (00:24 +0000)]
b=618962
- Temporary fix for 618962 by handling OPEN intents in revalidate
adilger [Sat, 5 Oct 2002 14:11:23 +0000 (14:11 +0000)]
Move debugging message outside spinlock.
adilger [Sat, 5 Oct 2002 13:56:27 +0000 (13:56 +0000)]
Dump debug log at cleanup time, in case of errors.
adilger [Sat, 5 Oct 2002 13:54:58 +0000 (13:54 +0000)]
Document the --dump option properly.
adilger [Sat, 5 Oct 2002 13:54:25 +0000 (13:54 +0000)]
Dump debug log at end of test in case of error.
adilger [Sat, 5 Oct 2002 13:42:39 +0000 (13:42 +0000)]
Two fixed:
- refcounts on MDS module fixed, and problems with bogus exports
- unsafe list walking on the open file list of the MDS could cause
random memory problems
- added real handles for open files on the MDS to ensure we don't
dereference bogus pointers - mike you still need to clean up open
files on the MDS for disconnect
adilger [Sat, 5 Oct 2002 09:45:20 +0000 (09:45 +0000)]
Comment out unused variables to quiet compiler warnings.
Remove dead code (it can always be had from CVS again).
Minor formatting.
adilger [Sat, 5 Oct 2002 04:31:45 +0000 (04:31 +0000)]
Fix breakage in lconf.
I guess when you are doing recovery, you never shut down cleanly...
shaver [Sat, 5 Oct 2002 00:56:45 +0000 (00:56 +0000)]
Unlock a lock that exists, fixing the build. (Thanks to Hari for pointing this
out; I don't know how I built before.)
adilger [Fri, 4 Oct 2002 23:42:33 +0000 (23:42 +0000)]
Add verbosity flag.
shaver [Fri, 4 Oct 2002 23:07:07 +0000 (23:07 +0000)]
- Add support for umount -f: it invalidates all in-flight and delayed requests
and marks the connection(s) as invalid, so that future operations fail.
- Make the NEWCONN ioctl clear the CONN_INVALID flag.
- Remove a handful of unused members from ptlrpc_request.
- More informative and uniform req-failure (timeout, recovery, umount -f)
reporting.
- Update runfailure-net a little; more work needed here.
- Add --force / -f to lconf for "umount -f" umounting.
adilger [Fri, 4 Oct 2002 23:03:27 +0000 (23:03 +0000)]
Add openclose into the mix, to test EA creation and removal on the MDS.
Seems to have payed off rather quickly.
Increment thread counts by 5 each time, and exit at < 196 threads (which
caused a problem for shmem somehow.
pschwan [Fri, 4 Oct 2002 21:32:56 +0000 (21:32 +0000)]
- Make lustre_lite.h userspace-include-safe
- Make openclose.c do an ioctl a-la IOR for more testing
eeb [Fri, 4 Oct 2002 19:24:28 +0000 (19:24 +0000)]
. request buffering parameters as checked out on MCR
. #warning + reduced strength assertion on unlined_me
. fixed dynamically allocated IOVs getting freed too early
adilger [Fri, 4 Oct 2002 17:20:42 +0000 (17:20 +0000)]
Add BKL for obdfilter also.
pschwan [Fri, 4 Oct 2002 14:29:59 +0000 (14:29 +0000)]
Make ldlm_cli_cancel_unused not return an error for invalid resource. This is
a very common case, where a file is opened and then closed without locks having
been taken.
adilger [Fri, 4 Oct 2002 10:36:34 +0000 (10:36 +0000)]
Minor cleanups.
adilger [Fri, 4 Oct 2002 09:54:32 +0000 (09:54 +0000)]
Update journal_{start,stop} to have the BKL around them. This fixes a
number of serious bugs that were seen in the MDS.
adilger [Fri, 4 Oct 2002 08:45:36 +0000 (08:45 +0000)]
A script along the lines of runregression-net.sh and runregression-brw.sh,
which is rather simple-minded in its operations, but does lots of them.
adilger [Fri, 4 Oct 2002 08:00:09 +0000 (08:00 +0000)]
If we are passed a bad connection handle don't oops.
adilger [Fri, 4 Oct 2002 07:59:24 +0000 (07:59 +0000)]
Don't try to disconnect connections we don't have.
adilger [Fri, 4 Oct 2002 05:20:52 +0000 (05:20 +0000)]
Program to create/destroy many files.
adilger [Fri, 4 Oct 2002 05:00:46 +0000 (05:00 +0000)]
Add a "threads" parameter too openclose, so you can easily launch lots of
threads.
thantry [Fri, 4 Oct 2002 00:05:45 +0000 (00:05 +0000)]
Removed strtok, replaced with strsep(threadsafe) for 2.5 kernel
adilger [Thu, 3 Oct 2002 22:45:55 +0000 (22:45 +0000)]
Remove all of the single-threaded-single-page read verifications.
adilger [Thu, 3 Oct 2002 22:29:57 +0000 (22:29 +0000)]
Pack inode data into reply for mds_open().
thantry [Thu, 3 Oct 2002 22:25:54 +0000 (22:25 +0000)]
Added more debug to LProc cleanup
adilger [Thu, 3 Oct 2002 22:15:56 +0000 (22:15 +0000)]
Helper functions for OST file handles.
thantry [Thu, 3 Oct 2002 21:49:14 +0000 (21:49 +0000)]
Updated version of the header file for SNMP first code drop
thantry [Thu, 3 Oct 2002 21:48:26 +0000 (21:48 +0000)]
Added SNMP namespace minus the hierarchical info
thantry [Thu, 3 Oct 2002 21:01:43 +0000 (21:01 +0000)]
First set of changes for SNMP, allows reading of UUID
pschwan [Thu, 3 Oct 2002 20:00:29 +0000 (20:00 +0000)]
- rewrap lustre_lib, so it's readable in an 80-column emacs
- add a touch more debugging to extent locking
shaver [Thu, 3 Oct 2002 19:45:04 +0000 (19:45 +0000)]
- Fix dumb iloop bug in dump_connection_list by properly using the list_head
API. Sorry.
adilger [Thu, 3 Oct 2002 19:35:25 +0000 (19:35 +0000)]
Don't hold i_sem for invalidate_inode_pages() in ll_lock_callback() (I
could have sworn I committed this yesterday).
Don't put obdos on the stack if we can avoid it.
adilger [Thu, 3 Oct 2002 19:26:02 +0000 (19:26 +0000)]
Handle error case when mdc_readpage() fails.
adilger [Thu, 3 Oct 2002 19:09:28 +0000 (19:09 +0000)]
Add client.c and target.c in place of l_net.c
pschwan [Thu, 3 Oct 2002 19:06:32 +0000 (19:06 +0000)]
b=617434
shaver's fix for the recovery NULL deref
adilger [Thu, 3 Oct 2002 17:55:15 +0000 (17:55 +0000)]
More makefile fixes.
adilger [Thu, 3 Oct 2002 17:37:05 +0000 (17:37 +0000)]
Don't use relative paths for files as it breaks automake.
pschwan [Thu, 3 Oct 2002 17:27:28 +0000 (17:27 +0000)]
- Add extent information to LDLM_DEBUG
- When we receive a completion AST for an extent lock, copy the new extent
out of the lock_desc
- fix unbalanced ENTRY
shaver [Thu, 3 Oct 2002 17:02:19 +0000 (17:02 +0000)]
- Add some more verbose logging of the cases that get clients into recovery.
- l_wait_event returns -EINTR, not -ERESTARTSYS.
shaver [Thu, 3 Oct 2002 16:45:43 +0000 (16:45 +0000)]
- Add mount-epoch checking in most (all?) inode-using operations, in preparation
for inode poisoning during failed recovery.
- Chain superblocks off the associated connections, because they were the only
things we weren't yet keeping in a list or three. (Also, so we can find the
right superblocks to poison during recovery.)
- Split l_net.c into client.c and target.c to avoid OST/MDS dependencies on
llite, and soothe my soul.
- Build client.c and target.c as sources from other directories as needed,
instead of symlinking them. (Someone could do this with the rest of the
symlinked stuff, or I'll get to it later.)
adilger [Thu, 3 Oct 2002 05:37:28 +0000 (05:37 +0000)]
Fix problems if ext3 and extN have different sb_info structs.
pschwan [Thu, 3 Oct 2002 02:34:05 +0000 (02:34 +0000)]
b=617434
Add some bulletproofing to sync_io_timeout, to try to fix this.
gord-fig [Thu, 3 Oct 2002 01:34:59 +0000 (01:34 +0000)]
BuildArch: noarch is still broken.
adilger [Wed, 2 Oct 2002 23:52:47 +0000 (23:52 +0000)]
Always fill in the full body on reply to keep ll_lookup2 happy.
adilger [Wed, 2 Oct 2002 21:33:03 +0000 (21:33 +0000)]
Fix breakage caused earlier this week by over-optimization.
adilger [Wed, 2 Oct 2002 20:18:23 +0000 (20:18 +0000)]
Set the ino earlier - it appears that the second RPC reply does not set it.
adilger [Wed, 2 Oct 2002 20:12:42 +0000 (20:12 +0000)]
Formatting.
adilger [Wed, 2 Oct 2002 20:07:16 +0000 (20:07 +0000)]
Formatting.
adilger [Wed, 2 Oct 2002 20:06:51 +0000 (20:06 +0000)]
Fix circutious xattr_set.
Add commented-out (un)lock_kernel for transactions, if we decide to go there.
adilger [Wed, 2 Oct 2002 20:02:41 +0000 (20:02 +0000)]
Minor updates for readability.
adilger [Wed, 2 Oct 2002 19:54:11 +0000 (19:54 +0000)]
Helper routine for passing OBD handles around.
pschwan [Wed, 2 Oct 2002 19:53:50 +0000 (19:53 +0000)]
- Change an LDLM LBUG into just a warning, now that it can happen with local
locks. The warning will eventually be removed, but I want to know where it's
happening before I do that.
adilger [Wed, 2 Oct 2002 19:51:53 +0000 (19:51 +0000)]
Minor updates to 0.5.13 release notes.
pschwan [Wed, 2 Oct 2002 18:56:27 +0000 (18:56 +0000)]
- Comment out put_connection until we resolve the dep issue
- Can c ever be NULL in ptlrpc_put_connection? I don't know, but I want to
find out.
adilger [Wed, 2 Oct 2002 17:58:30 +0000 (17:58 +0000)]
Comment about expected compile warning (to disappear in the future).
pschwan [Wed, 2 Oct 2002 17:05:16 +0000 (17:05 +0000)]
- Do proper refcounting on export->exp_connection -- maybe this will fix the
leaking conns we see?
- add some unbalanced ENTRYs and some LASSERTs to help track down a bug
adilger [Wed, 2 Oct 2002 16:38:19 +0000 (16:38 +0000)]
mds_open:
- Don't leak a journal handle, dentry, mntget on mds_open failure.
- Wrap all filesystem operations inside push_ctxt.
- Don't lose the return status from mds_update_last_rcvd() when stopping
the journal handle.
mds_close:
- Don't do a fid2dentry, since we don't use the result anyways.
- Do all of the filesystem close operations before possibly hitting an
RPC error to avoid filesystem leaks (shouldn't happen anyways, since
we are allocating zero bytes).
pschwan [Tue, 1 Oct 2002 22:32:47 +0000 (22:32 +0000)]
- If a non-CONNECT request is made with an invalid export, we need to
instantiate a temporary lustre_connection with which to send a reply. This fix
is untested, but Mike says that he can reproduce this scenario easily.
- make ptlrpc_get_connection happier about receiving a NULL uuid
- avoid a possible connection reference leak in target_handle_connect
adilger [Tue, 1 Oct 2002 22:10:45 +0000 (22:10 +0000)]
Fix problem with duplicate inodes being created on the client. This should
fix the single-client open-unlink issue, and potentially other issues with
locking (the intent lock handle is also attached to the inode).
shaver [Tue, 1 Oct 2002 21:53:52 +0000 (21:53 +0000)]
Add support for FAILCONN ioctl, for recovery testing and (possibly) adminstrative
use.
shaver [Tue, 1 Oct 2002 18:55:37 +0000 (18:55 +0000)]
- Add RD_TROUBLED state for items that need to start recovery, and rename
the rd_state values to RD_*, to avoid namespace conflict with the recovd_state
values.
- Gobs of debugging and NULL-checking in expired_completion_wait, trying to track
down a can't-happen OOPS that phil is seeing.
- Better error reporting in the case where we can't run the recovery upcall.
- Disable the silly immediate restart of a failed client recovery, because it
causes a nice tight loop in the case that we can't run the recovery upcall.
- Mild .cvsignore fixes.
pschwan [Tue, 1 Oct 2002 17:50:22 +0000 (17:50 +0000)]
- ChangeLog update for 0.5.13
- Small formatting and wrapping changes that litter my tree
- Fixed unbalanced ENTRY/EXIT in my last symlink checkin
- Add a little more debugging info, to help track down an MDS LBUG
adilger [Tue, 1 Oct 2002 07:01:52 +0000 (07:01 +0000)]
Add header removed from obd_filter.h.
adilger [Tue, 1 Oct 2002 06:44:47 +0000 (06:44 +0000)]
Add export from obdfilter to hold open file handles.
Add dentry data so we can track destroy-while-file-open.
adilger [Tue, 1 Oct 2002 05:41:00 +0000 (05:41 +0000)]
Add OST handle to llite open file data.
adilger [Tue, 1 Oct 2002 05:40:20 +0000 (05:40 +0000)]
TODO comment for mds_body.
adilger [Tue, 1 Oct 2002 05:39:13 +0000 (05:39 +0000)]
Add LOV export handle to reference open handles.
Make a union out of MDS/LOV/obdfilter export data, not sure if LDLM data
can share the same export of not.
adilger [Tue, 1 Oct 2002 01:58:30 +0000 (01:58 +0000)]
Rename "export" with "exp" so it doesn't screw up my syntax highlighting
(export is a reserved C keyword).
adilger [Tue, 1 Oct 2002 01:56:12 +0000 (01:56 +0000)]
Add handle for exports from obdfilter.
Add handle for LOV open.
adilger [Tue, 1 Oct 2002 01:54:02 +0000 (01:54 +0000)]
Add OBD_MD_FLHANDLE
adilger [Tue, 1 Oct 2002 01:51:12 +0000 (01:51 +0000)]
Don't index unused directory indexes.