Whamcloud - gitweb
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.
pschwan [Mon, 30 Sep 2002 03:01:43 +0000 (03:01 +0000)]
b=614622
All filesystems need to implement their own follow_link method, and we weren't.
So we never followed a symlink. Ever.
This file doesn't bear even the slightest relation to ext2/symlink.c anymore,
so I removed the old copyright notice.
gord-fig [Sat, 28 Sep 2002 20:01:40 +0000 (20:01 +0000)]
Do some patch math.
pschwan [Fri, 27 Sep 2002 22:34:24 +0000 (22:34 +0000)]
b=611892
Avoid conversion deadlocks by acquiring new locks instead of trying to
convert PR locks to PW.
adilger [Fri, 27 Sep 2002 21:26:49 +0000 (21:26 +0000)]
Use types for journal_callback_set() as in RH 12.5 rawhide and as submitted
for the 2.4.20 kernel. Will cause a compile warning on chaos22 kernels.
adilger [Fri, 27 Sep 2002 21:11:53 +0000 (21:11 +0000)]
Mask off the type bits and not the permission bits.
adilger [Fri, 27 Sep 2002 00:12:52 +0000 (00:12 +0000)]
Silence bogus compiler warning by moving code closer together.
adilger [Fri, 27 Sep 2002 00:03:08 +0000 (00:03 +0000)]
Add update for v0_5_12
adilger [Thu, 26 Sep 2002 23:59:40 +0000 (23:59 +0000)]
Remove unused variable.
pschwan [Thu, 26 Sep 2002 20:56:00 +0000 (20:56 +0000)]
b=611336
Until we really fix 611336 to never send larger IOV requests than the server
can handle, we should at least avoid _crashing_ the server.
pschwan [Thu, 26 Sep 2002 17:55:55 +0000 (17:55 +0000)]
I don't much like crashing
pschwan [Thu, 26 Sep 2002 17:45:30 +0000 (17:45 +0000)]
b=614867
- Remove replies from lock callbacks; Monish verified that this would not harm
the BlueArcs.
- Fixup an overlooked instrumentation detail
- Add an LBUG() to a lock conversion case that I don't think we should ever hit
yet.
pschwan [Thu, 26 Sep 2002 16:37:17 +0000 (16:37 +0000)]
b=613941
Previously, if a filesystem user called readlink() without enough buffer space,
Lustre would allocate a reply packet that's too small and we'd drop the packet
and go into recovery.
Now Lustre sends the maximum size to the server, which will truncate its own
readlink and reply appropriately.
gord-fig [Thu, 26 Sep 2002 03:29:58 +0000 (03:29 +0000)]
Don't forget to distribute the ext3 fixes patch.
shaver [Wed, 25 Sep 2002 23:32:33 +0000 (23:32 +0000)]
- #include good, implicit-decl warning bad.
shaver [Wed, 25 Sep 2002 22:58:09 +0000 (22:58 +0000)]
- Use l_wait_event in ldlm_completion_ast to both trigger recovery and make
hangs there due to dead MDSs/OSTs interruptible.
adilger [Wed, 25 Sep 2002 22:20:17 +0000 (22:20 +0000)]
Remove "helpful" error message, because it screws things up.
adilger [Wed, 25 Sep 2002 21:43:12 +0000 (21:43 +0000)]
Add more obvious error message after a patch failure, instead of before.
adilger [Wed, 25 Sep 2002 21:27:19 +0000 (21:27 +0000)]
Reverse order of i_version and extN_mark_inode_dirty tests, for stock kernels.
List the chaos22 patch as an alternative.
gord-fig [Wed, 25 Sep 2002 20:49:08 +0000 (20:49 +0000)]
Automatically detect when to apply the fixes patch.
gord-fig [Wed, 25 Sep 2002 20:23:49 +0000 (20:23 +0000)]
Update UML fire-putting-out patch.
adilger [Wed, 25 Sep 2002 19:59:54 +0000 (19:59 +0000)]
Don't automatically add patches to CVS.
Don't run with set -vx, but echo some status.
Remove "EXTRA" files before trying to apply existing patches.
Formatting.
shaver [Wed, 25 Sep 2002 19:43:33 +0000 (19:43 +0000)]
- Remove cancelled locks from the waiting list. Revoking locks from a dead
client to service another client now seems to work quite well. (The dead
client can even reconnect successfully.)
gord-fig [Wed, 25 Sep 2002 17:52:29 +0000 (17:52 +0000)]
Make patch generation more accurate with new files.
thantry [Wed, 25 Sep 2002 16:23:00 +0000 (16:23 +0000)]
Fixed Bug #614157, not uncommentig the registration/deregistration part
gord-fig [Wed, 25 Sep 2002 04:06:49 +0000 (04:06 +0000)]
First cut at uml40 extN patch.
braam [Wed, 25 Sep 2002 03:20:04 +0000 (03:20 +0000)]
- add ucred structure. MDS now sets the fsuid and fsgid to that of
the caller to enforce permissions, with a new argument to push_ctxt.
shaver [Wed, 25 Sep 2002 02:25:26 +0000 (02:25 +0000)]
- Cancel any and all outstanding locks when an export is disconnected.
- Remove icky and unused ldlm_destroy_export and mds_destroy_export hooks.
- Trigger recovery from timed-out lock callbacks.
- Support for replyless requests:
- add 1 to initial request refcount, balanced in request_out_callback
- don't set up reply portal buffer if replen is 0
- Ignore reply to DLM blocking/completed ASTs. (Note: we still very much care
about cancellation in response to blocking ASTs.)
- Server-side recovery now "simply" forces a disconnect of every export using
the failed connection.
- Handle (better, not perfectly) the case where we signal failure on a connection
that is already undergoing recovery. We need to do more here, but this will
keep us from going too deeply insane for now.
gord-fig [Tue, 24 Sep 2002 22:55:59 +0000 (22:55 +0000)]
Certified patch hacker I am not. Get the line counts right.
gord-fig [Tue, 24 Sep 2002 22:45:53 +0000 (22:45 +0000)]
Adapt ../extN/ext3-2.4.18-fixes.diff to chaos22.
gord-fig [Tue, 24 Sep 2002 22:07:15 +0000 (22:07 +0000)]
Enable make diff target for creating kernel-specific patches.
pschwan [Tue, 24 Sep 2002 20:04:00 +0000 (20:04 +0000)]
The old patch was failing because sometimes the inodes were gone by the time
the callback was called with CB_DYING. I also realized that the client would
believe that it had valid data for too long.
Instead of an extra callback when the lock is freed, I moved that extra
callback to just before we cancel the lock. Because there's two paths for that
now (cancelling with server notification and cancelling without), I had to
introduce _another_ l_flag, which indicates whether we've done this call. Oh
well. It works much better now.
adilger [Tue, 24 Sep 2002 19:26:10 +0000 (19:26 +0000)]
Use sizeof(var) instead of sizeof(type).
adilger [Tue, 24 Sep 2002 19:25:09 +0000 (19:25 +0000)]
Add debugging to show where we are getting refcounts on obdclass, to aid in
cleanup debugging (sometimes it has refcounts on an error cleanup).
adilger [Tue, 24 Sep 2002 19:23:31 +0000 (19:23 +0000)]
Fix simple_mknod() to handle existing files properly.
Specify the file type when creating a file in obdfilter() to allow checking.
adilger [Tue, 24 Sep 2002 19:18:17 +0000 (19:18 +0000)]
Use the OBD_MD_FLTYPE and OBD_MD_FLMODE flags where appropriate.
adilger [Tue, 24 Sep 2002 19:01:33 +0000 (19:01 +0000)]
Another minor change to the extN makefile, so it works if the fixes patch
is uncommented.
adilger [Tue, 24 Sep 2002 18:58:32 +0000 (18:58 +0000)]
Remove a fix from the "fixes" patch for vanilla kernels which require changes
to the core VFS code that cannot be copied into our code.
braam [Tue, 24 Sep 2002 18:54:54 +0000 (18:54 +0000)]
- documentation updates for the collaborative cache
- NAL document with beginning of I/B NAL design
- all MDS requests have an fsuid and fsgid now to start permission
checking on the MDS.
adilger [Tue, 24 Sep 2002 18:44:21 +0000 (18:44 +0000)]
Ignore the --reformat option after the initial setup step.
Allow for a small amount of internal filesystem usage for status file.
braam [Tue, 24 Sep 2002 18:01:40 +0000 (18:01 +0000)]
Add this include for a clean compile.
shaver [Tue, 24 Sep 2002 17:57:05 +0000 (17:57 +0000)]
Makefile microfix.
adilger [Tue, 24 Sep 2002 17:51:53 +0000 (17:51 +0000)]
Damn those continuation characters in Makefiles.
adilger [Tue, 24 Sep 2002 17:20:57 +0000 (17:20 +0000)]
Add comment to point people to ext3-2.4.18-fixes.diff in extN/Makefile.am.
pschwan [Tue, 24 Sep 2002 17:06:33 +0000 (17:06 +0000)]
Back out the piece of the locking fix that caused the problem, until I can
actually fix it.
pschwan [Tue, 24 Sep 2002 16:24:45 +0000 (16:24 +0000)]
- Adds an int 'local_only' to the cancel_unused function and methods.
Pass in a non-zero value to cancel the locks locally without notifying the
server. Used in recovery.
- Documentation update for the same.
adilger [Tue, 24 Sep 2002 08:36:01 +0000 (08:36 +0000)]
Add definitions of the valid flags.
adilger [Tue, 24 Sep 2002 06:38:36 +0000 (06:38 +0000)]
Updated to apply to "fixed" ext3 tree from RH kernel.
Include patch which can be applied in extN as a prelude to the other
patches, or which can be applied in the source ext3 to fix that also.
adilger [Mon, 23 Sep 2002 23:50:43 +0000 (23:50 +0000)]
Update patch to apply to RH kernel.
adilger [Mon, 23 Sep 2002 23:44:13 +0000 (23:44 +0000)]
Update htree patch to apply to the RH kernel. To keep it usable on
other kernels (since this change is not yet even in 2.4.20-pre7) we should
have a separate pre-patch which does only the RH fixes themselves to a
stock kernel.
rread [Mon, 23 Sep 2002 21:27:35 +0000 (21:27 +0000)]
* add ignore_error cmd to lctl
* use it in lconf during cleanup so errors are non-fatal
* return lctl exit status in lconf properly
pschwan [Sun, 22 Sep 2002 03:32:28 +0000 (03:32 +0000)]
b=612449
Fix two bugs related to file attributes:
1. We were accidentally clobbering the mode with the mode from the OST in
ll_file_size
2. We were not updating the file attributes in ll_find_inode
Both are fixed, and inode attributes are once again coherent.
pschwan [Sun, 22 Sep 2002 02:47:48 +0000 (02:47 +0000)]
b=605627
Fixes two bugs related to 605627 that have been present since we started
correctly reusing inodes.
- We were giving up locks at file close time, but not throwing away file data
pages. Fixed, by adding a flag to the blocking callback. It's now called
under two different circumstances: when a lock needs to be given up
(LDLM_CB_BLOCKING) and when a lock is about to be freed (LDLM_CB_DYING)
- We were not refreshing inode attributes (notably size) correctly. I brute
force this by always calling ll_file_size() in ll_inode_revalidate, but this
needs some obvious immediate refinement.
As an aside, I noticed that the DLM API documentation gives almost no mention
to the arguments or calling conventions of the callback functions.
eeb [Fri, 20 Sep 2002 21:05:50 +0000 (21:05 +0000)]
Modifications for "circulating" request buffers (sized in lustre_net.h)
gord-fig [Fri, 20 Sep 2002 19:43:07 +0000 (19:43 +0000)]
Use slightly more robust way of making configure depend on lustre.spec.in
rread [Fri, 20 Sep 2002 18:43:49 +0000 (18:43 +0000)]
* attempt to return proper exit codes when errors occur
* remove unnecessary --get <url> option
adilger [Fri, 20 Sep 2002 16:15:42 +0000 (16:15 +0000)]
Fix typo.
gord-fig [Fri, 20 Sep 2002 15:00:05 +0000 (15:00 +0000)]
Allow the user to specify lmc and config filenames.
adilger [Fri, 20 Sep 2002 09:25:15 +0000 (09:25 +0000)]
Add in IT_LINK2.
adilger [Fri, 20 Sep 2002 09:18:19 +0000 (09:18 +0000)]
Updates for v0_5_11
adilger [Fri, 20 Sep 2002 09:13:28 +0000 (09:13 +0000)]
Don't bug if we run out of space on the MDS when storing an EA.
adilger [Fri, 20 Sep 2002 09:10:47 +0000 (09:10 +0000)]
Don't just barf if we can't allocate memory.
adilger [Fri, 20 Sep 2002 09:09:34 +0000 (09:09 +0000)]
64-bit printout cleanups.
adilger [Fri, 20 Sep 2002 09:08:17 +0000 (09:08 +0000)]
Don't return an error code if we already have a reply buffer.
adilger [Fri, 20 Sep 2002 09:06:00 +0000 (09:06 +0000)]
Return the rename tests to runtests.
Check for allocation leaks between the start and end of the run (this will
probably complain on BA OSTs, because presumably they are consuming space
for their subdirectories.
Add "-v" verbose option.
adilger [Fri, 20 Sep 2002 08:05:06 +0000 (08:05 +0000)]
Re-add memset() of request struct, since we re-use the same struct many times.
shaver [Fri, 20 Sep 2002 00:38:00 +0000 (00:38 +0000)]
- Parallel recovery implementation, to match documented design.
- Handle failed client recovery by simply restarting recovery. Not perfect, but
surprisingly useful for testing.
adilger [Thu, 19 Sep 2002 23:19:55 +0000 (23:19 +0000)]
Add link support to vanilla kernel patch.
adilger [Thu, 19 Sep 2002 22:35:34 +0000 (22:35 +0000)]
Set the EASIZE valid flag in the MDS body, so the filesystem knows there
is EA data available.
adilger [Thu, 19 Sep 2002 22:33:19 +0000 (22:33 +0000)]
Add a comment on why we don't return a lock for some operations.
adilger [Thu, 19 Sep 2002 22:32:37 +0000 (22:32 +0000)]
Fix comments, add declaration for simple_mknod().