Whamcloud - gitweb
adilger [Fri, 18 Oct 2002 23:35:27 +0000 (23:35 +0000)]
Remove demos directory entirely.
adilger [Fri, 18 Oct 2002 23:34:45 +0000 (23:34 +0000)]
Remove ancient and unworking snapshot demo scripts.
adilger [Fri, 18 Oct 2002 23:27:46 +0000 (23:27 +0000)]
One more straggler in obdfs.
adilger [Fri, 18 Oct 2002 23:20:52 +0000 (23:20 +0000)]
Remove ancient and entirely non-working obdfs code from the HEAD.
pschwan [Fri, 18 Oct 2002 22:32:45 +0000 (22:32 +0000)]
More 2.5-SMP build fixes
pschwan [Fri, 18 Oct 2002 22:20:54 +0000 (22:20 +0000)]
Fix build on 2.4SMP
I don't have a working 2.5 llite directory yet, so can you test these
changes, Andreas?
pschwan [Fri, 18 Oct 2002 22:06:16 +0000 (22:06 +0000)]
I really broke the tree last night. I guess nobody has been using it much
today.
- Remove a bogus assertion in ldlm_completion_ast
- Add a class 9 hack in ldlm_destroy_lock to get things working
- LINUX_VERSION_CODE requires version.h
adilger [Fri, 18 Oct 2002 21:45:48 +0000 (21:45 +0000)]
Fix breakage from missing wait_on_buffer() inline.
shaver [Fri, 18 Oct 2002 21:42:03 +0000 (21:42 +0000)]
automake 1.6.x doesn't like the redefinition, and I bet that's not what we meant
anyway.
adilger [Fri, 18 Oct 2002 21:19:57 +0000 (21:19 +0000)]
Header changes needed to compile under 2.5 (compiled also with 2.4 to verify).
rread [Fri, 18 Oct 2002 19:39:03 +0000 (19:39 +0000)]
* allow lmc and lconf paths to be overridden in installed scripts
rread [Fri, 18 Oct 2002 19:29:06 +0000 (19:29 +0000)]
* fix braino
adilger [Fri, 18 Oct 2002 19:25:48 +0000 (19:25 +0000)]
More merging from the 2.5 tree.
radhikav [Fri, 18 Oct 2002 19:21:51 +0000 (19:21 +0000)]
Replace the man page for lmc to describe the current options for lmc. Added a new file which describes the proposed new implementation for lmc.
adilger [Fri, 18 Oct 2002 19:13:03 +0000 (19:13 +0000)]
Another minor "make the current code closer to intent code" change.
adilger [Fri, 18 Oct 2002 19:02:00 +0000 (19:02 +0000)]
Merge some of the no-op intent changes to the core tree before branching.
rread [Fri, 18 Oct 2002 19:01:50 +0000 (19:01 +0000)]
* change --with-portalslib to require the full path and also use the
--with-portals arg as the base dir for the default
* remove old config scripts and put examples in /usr/lib/lustre/examples
adilger [Fri, 18 Oct 2002 17:53:15 +0000 (17:53 +0000)]
Add missing symlink hunk.
adilger [Fri, 18 Oct 2002 17:51:54 +0000 (17:51 +0000)]
Minor cleanup.
pschwan [Fri, 18 Oct 2002 17:40:06 +0000 (17:40 +0000)]
bdevname changed in 2.5
radhikav [Fri, 18 Oct 2002 16:30:15 +0000 (16:30 +0000)]
Updated the lctl manpage and Lustre How-To.
adilger [Fri, 18 Oct 2002 07:40:21 +0000 (07:40 +0000)]
Show the size tha we were truncating too.
adilger [Fri, 18 Oct 2002 07:36:44 +0000 (07:36 +0000)]
Add some variables to the config scripts so they are easier to customize.
adilger [Fri, 18 Oct 2002 07:34:23 +0000 (07:34 +0000)]
Add a minor check to the punch call.
adilger [Fri, 18 Oct 2002 06:34:08 +0000 (06:34 +0000)]
Give a valid return code for the non-intent ll_unlink and ll_rmdir.
-ENOENT is what ext2_unlink uses, so it must be correct...
braam [Fri, 18 Oct 2002 05:11:14 +0000 (05:11 +0000)]
Amruts patch for building extN outside the source
braam [Fri, 18 Oct 2002 05:10:48 +0000 (05:10 +0000)]
Amrut's patch for building extN outside the source.
braam [Fri, 18 Oct 2002 05:00:26 +0000 (05:00 +0000)]
I believe this makefile change fixes the problems in the build outside
the source tree. Interestingly I did NOT need Amrut patches, but only
tested this for UML.
braam [Fri, 18 Oct 2002 04:32:25 +0000 (04:32 +0000)]
First check in of the new intent patch that protects d_it better.
Not much tested.
This one works against Red Hat 8.0 2.4.18-14 kernel sources.
pschwan [Fri, 18 Oct 2002 01:50:19 +0000 (01:50 +0000)]
- Modify ldlm_completion_ast to wake up when locks are cancelled as well as
granted
- Wake sleepers in ldlm_lock_destroy
adilger [Thu, 17 Oct 2002 23:51:54 +0000 (23:51 +0000)]
- Add a slab for allocating OSC lock handles - 16-byte handles are a waste
of 32-byte slab kmallocs.
- Rename a couple of the slabs to have an ll_ prefix for easy /proc/slabinfo
grepping.
adilger [Thu, 17 Oct 2002 23:30:51 +0000 (23:30 +0000)]
Don't store LOV EA data on mds_reint_create() for non-intent case - we
always do deferred object allocation now.
adilger [Thu, 17 Oct 2002 23:07:46 +0000 (23:07 +0000)]
Duh, repeat after me - compile before you commit.
adilger [Thu, 17 Oct 2002 23:04:58 +0000 (23:04 +0000)]
Fix merge error.
pschwan [Thu, 17 Oct 2002 22:45:02 +0000 (22:45 +0000)]
More debugging related to the portals/rpc weirdness.
pschwan [Thu, 17 Oct 2002 22:43:52 +0000 (22:43 +0000)]
Split ldlm_namespace_free into ldlm_namespace_free and _cleanup. Cleanup
will just discard all locks and resources.
This is not quite finished, because it needs to also wake up people who
were sleeping on these locks (and cause EIO or similar) before it can free
them.
pschwan [Thu, 17 Oct 2002 22:39:07 +0000 (22:39 +0000)]
Miscellaneous fixes:
- READLINK wasn't well represented in ll_lookup2, so failed readlinks would have
gone very poorly indeed.
- Remove #if 0s from ll_common_unlink; these were a temporary fix to
the "rmdir `pwd`" problem, which should no longer be necessary.
adilger [Thu, 17 Oct 2002 09:14:48 +0000 (09:14 +0000)]
- improved handling of errors returned from MDS intent operations.
- remove bogus setting of MDS reply body fields at client in ll_create_node
- always do deferred object creation with ll_create() for non-intent ops
adilger [Thu, 17 Oct 2002 09:09:25 +0000 (09:09 +0000)]
Minor optimization.
adilger [Thu, 17 Oct 2002 09:06:24 +0000 (09:06 +0000)]
Ensure that we get a valid rootino back to avoid polluting the inode hash.
adilger [Thu, 17 Oct 2002 08:35:22 +0000 (08:35 +0000)]
More pre-emtpive Changelog entries.
adilger [Thu, 17 Oct 2002 08:31:32 +0000 (08:31 +0000)]
Add permission bits when we open with O_CREAT (b=624321).
adilger [Thu, 17 Oct 2002 07:16:25 +0000 (07:16 +0000)]
Minor edits to remove apparently unfinished sentences.
adilger [Wed, 16 Oct 2002 20:13:39 +0000 (20:13 +0000)]
- helper lov_stripe_size() calculates apparent file size from each stripe
- helper lov_merge_attrs() uses lov_stripe_size() and also merges other attrs
- lov_getattr() and lov_open() use lov_merge_attrs() to return size+blocks
- fix lov_stripe_offset() to work properly for truncate up operations
- don't allocate obdos on the stack if we can avoid it
- lov_setattr() is not being used - add LBUG() to ensure we notice when/if
it does start being used and do a code audit for correctness
adilger [Wed, 16 Oct 2002 17:27:18 +0000 (17:27 +0000)]
- Extract the file size and blocks from osc_open() in ll_file_open(). Avoids
a bug where the file size is incorrectly stored on the MDS (not sure why,
but then we don't trust the file size on the MDS anyways.
- Fix the unlock half of the boolean locking check I fixed last week.
- Use the common ll_create_objects() helper to create objects, so the BA OST
workaround is in use for all creates.
adilger [Wed, 16 Oct 2002 17:15:29 +0000 (17:15 +0000)]
Reduce the number of NBUFS slightly for small machines, so that you can
load 2 OSTs into a 64MB UML. The upper limit is exactly the same as
before.
shaver [Wed, 16 Oct 2002 06:21:34 +0000 (06:21 +0000)]
- Fix the mdc_replay_open fixup so that it updates the handle in the Lustre
fh, not just in the request.
- Diagnostic for close-releasing-open req balancing.
- Don't allocate new transnos for replayed requests, or all hell _does_ break
loose with the committing of "old" requests as things get renumbered.
- Set request level to LUSTRE_CONN_RECOVD during replay.
- Only call the replay callback if the replay succeeded (which it had darned
well better do, but still...)
- Unlink old MEs when we free old reply buffers -- very important, sigh.
- Bullet-proof some resend diagnostics.
adilger [Wed, 16 Oct 2002 06:00:41 +0000 (06:00 +0000)]
Remove bogus hunks from the -12.5 RH kernel patch.
pschwan [Wed, 16 Oct 2002 01:50:56 +0000 (01:50 +0000)]
Bump the sanity-max to 1000, since we have way, way more than 50
connections on MCR.
shaver [Tue, 15 Oct 2002 23:25:14 +0000 (23:25 +0000)]
- Move recovery setup into the (network-using) connect methods, to fix
LOVs.
- Updated lov.xml file.
shaver [Tue, 15 Oct 2002 20:54:30 +0000 (20:54 +0000)]
- make_bad_inode as part of epoch-check mismatch handling
- cleanup and comment-for-phil in ll_lock
- partial fix for the crash in recovery that I introduced with my patch yesterday
- better diagnostics in lustre_msg_buf
- finished, not free_req, in reconnection
shaver [Tue, 15 Oct 2002 19:05:27 +0000 (19:05 +0000)]
Remove guaranteed-or-your-money-back deadlock from double taking of recovd_lock.
(Sorry, phil.)
gord-fig [Tue, 15 Oct 2002 13:02:04 +0000 (13:02 +0000)]
Downgrade to ps2pdf until changebars work with pdftex.
shaver [Tue, 15 Oct 2002 02:39:34 +0000 (02:39 +0000)]
- Rename the ptlrpc-general reconnection and replay functions, and export them
for use in other places (such as llite).
- Replace many dangerous ptlrpc_free_req calls with its refcount-friendly
ptlrpc_req_finished counterpart.
- Remove excess and harmful p_req_finished in ll_file_open.
- Move recovd_conn_manage calls from client_obd_connect to ll_read_super,
since the recovery function is now llite-specific.
- Resurrect llite/recover.c for said function (coming soon).
- Rationalized the portals-owned refcount (added in ptl_send_rpc, removed in
request_out_callback).
- Free repmsg from free_req, not req_finished, in case one of the remaining
ref-holders has plans for it.
- Diagnostics for freed reqs with outstanding refcounts, to help track down
any remaining cases.
- Initialize c_recovd_data.rd_managed_chain at allocation time, for better karma.
- Marginally nicer dump_connection_list output, and LBUG check for ilooping.
- Add diagnostics for double-managing of connections, which turned out not to be
the bug I was chasing earlier, but might well be in the future.
- Set rd_phase and rd_next_phase before calling the recovery state-machine hooks,
so that adjustments within those hooks (such as calls to recovd_conn_fixed)
don't result in an inconsistent state.
- Failure to run the upcall no longer aborts recovery, so that an administrator
can manually salvage things.
- More complete diagnostics for request replay and sleeping.
braam [Mon, 14 Oct 2002 22:53:58 +0000 (22:53 +0000)]
fix tables, figures etc.
pschwan [Mon, 14 Oct 2002 22:11:31 +0000 (22:11 +0000)]
a pre-emptive strike on the changelog, so I don't forget when it comes
time to tag 0.5.15
pschwan [Mon, 14 Oct 2002 21:27:48 +0000 (21:27 +0000)]
b=617851
- Had to disable robert's semaphore changes -- they were causing deadlocks.
I'll debug this separately.
- Revamp ll_revalidate2 to return '1' any time that we have a lock (or a pinned
dentry, which may not always be the right thing)
- Don't LBUG() if we try to rmdir a not-empty directory
braam [Mon, 14 Oct 2002 20:11:53 +0000 (20:11 +0000)]
Roberts patch for chaos25
adilger [Mon, 14 Oct 2002 19:44:06 +0000 (19:44 +0000)]
Add ignored file.
eeb [Mon, 14 Oct 2002 18:04:52 +0000 (18:04 +0000)]
Changed test for src_eq_h into an assertion (always valid)
gord-fig [Mon, 14 Oct 2002 00:54:54 +0000 (00:54 +0000)]
Clean up some wildcards.
pschwan [Sun, 13 Oct 2002 15:40:02 +0000 (15:40 +0000)]
b=599178
- Update ChangeLog for 0.5.14 (oops)
- ldlm/ldlm_lock.c: I reordered ldlm_lock2handle before, and in the process
inserted a stupid bug; fixed.
- bug 599178 (don't permit multiple ldlm setup) fixed
adilger [Sat, 12 Oct 2002 05:36:23 +0000 (05:36 +0000)]
minor nicety.
adilger [Fri, 11 Oct 2002 23:19:49 +0000 (23:19 +0000)]
Revert some of the CERROR->CDEBUG changes in recovery.
adilger [Fri, 11 Oct 2002 21:24:05 +0000 (21:24 +0000)]
Make lovstripe.c a bit more verbose when running the test.
gord-fig [Fri, 11 Oct 2002 18:23:35 +0000 (18:23 +0000)]
Fix up changebar generation--the order of the Makefile rules matters.
adilger [Fri, 11 Oct 2002 17:37:13 +0000 (17:37 +0000)]
Quiet uninitialized variable warning.
adilger [Fri, 11 Oct 2002 11:03:57 +0000 (11:03 +0000)]
Damn all that spelling stuff anyways.
adilger [Fri, 11 Oct 2002 11:01:40 +0000 (11:01 +0000)]
Poisoning of all cookies at free time (to work around slab cache bug, and
also potential problems when we don't have CONFIG_DEBUG_SLAB enabled.
Rename OBD_PUNCH_EOF as OBD_OBJECT_EOF, since we use it in places other
than punch.
adilger [Fri, 11 Oct 2002 10:56:05 +0000 (10:56 +0000)]
Poisoning of all cookies at free time (to work around slab cache bug, and
also potential problems when we don't have CONFIG_DEBUG_SLAB enabled.
Rename OBD_PUNCH_EOF as OBD_OBJECT_EOF, since we use it in places other
than punch.
Fix a boolean error when checking for no file locking.
adilger [Fri, 11 Oct 2002 10:55:27 +0000 (10:55 +0000)]
Poisoning of all cookies at free time (to work around slab cache bug, and
also potential problems when we don't have CONFIG_DEBUG_SLAB enabled.
Rename OBD_PUNCH_EOF as OBD_OBJECT_EOF, since we use it in places other
than punch.
adilger [Fri, 11 Oct 2002 10:46:06 +0000 (10:46 +0000)]
Rename obd_punch() parameters to what they should be.
shaver [Fri, 11 Oct 2002 06:33:51 +0000 (06:33 +0000)]
Send the correct (I think) client-LDLM export address when reconnecting.
I will now write 100 times on my whiteboard: reuse client_obd_connect.
shaver [Fri, 11 Oct 2002 04:47:08 +0000 (04:47 +0000)]
And "--force". Don't touch me. I'm fine!
shaver [Fri, 11 Oct 2002 04:42:16 +0000 (04:42 +0000)]
Add -f to the short_opts. What was I smoking before, exactly?
adilger [Fri, 11 Oct 2002 03:04:20 +0000 (03:04 +0000)]
Header changes for the delayed-alloc changes I previously made.
adilger [Fri, 11 Oct 2002 00:47:39 +0000 (00:47 +0000)]
Support delayed creation of objects, including a test program.
shaver [Thu, 10 Oct 2002 21:54:57 +0000 (21:54 +0000)]
- Add D_HA for recovery diagnostics, and use it in a handful of places.
- More information about replayed/sleeping/etc. requests.
- Instrument FH rewriting during open replay.
rread [Thu, 10 Oct 2002 17:44:17 +0000 (17:44 +0000)]
* don't open for writing
adilger [Thu, 10 Oct 2002 17:36:45 +0000 (17:36 +0000)]
Change the number of OST buffers depending on how much ram we have. Yes,
we could run out of space this way, but at least people will be able to
use Lustre on machines with < 2 GB of ram (that aren't UML).
pschwan [Thu, 10 Oct 2002 17:11:19 +0000 (17:11 +0000)]
b=621450
Fix IA64 include problem; tested build on IA32 without incident.
pschwan [Thu, 10 Oct 2002 16:47:36 +0000 (16:47 +0000)]
b=602707
b=620007
Fixes the ignored directory permissions bug, which was a direct cause of
the "la -la" bug.
- {push,pop}_ctxt now un-sets and re-sets CAP_DAC_OVERRIDE
- ll_lookup2 needs to be much more careful about which errors lead to a
negative dentry; I think I've gotten creations and unlinks right, but
we _so_ need a regression test that attempts a slew of error-causing
operations and verifies that we get the correct errors back.
- fix yet another ptlrpc_request-related crasher in mds/handler.c
- error during mds_reint_create is now par for the course; remove LBUG
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.