Whamcloud - gitweb
adilger [Sun, 8 Sep 2002 19:36:50 +0000 (19:36 +0000)]
Allow an objid to be specified on the CLI (via OID=<foo>) to allow multiple
hosts to run on the same object and/or only do rewrite or read tests on an
existing object.
adilger [Sun, 8 Sep 2002 19:32:24 +0000 (19:32 +0000)]
Add O_DIRECT by default again.
shaver [Sun, 8 Sep 2002 17:21:08 +0000 (17:21 +0000)]
Avoid OOPS on timeout from unconnected client. (Temporary.)
shaver [Sun, 8 Sep 2002 17:19:00 +0000 (17:19 +0000)]
Sample recovery reconnection script for MDS failover.
adilger [Sun, 8 Sep 2002 16:48:22 +0000 (16:48 +0000)]
Show page vector size (useful for very long running tests).
adilger [Sun, 8 Sep 2002 09:56:57 +0000 (09:56 +0000)]
Initialize spinlock for obdecho creates.
adilger [Sun, 8 Sep 2002 09:10:03 +0000 (09:10 +0000)]
Disable the lprocfs deregistration, now that I've disabled the registration.
adilger [Sun, 8 Sep 2002 09:00:53 +0000 (09:00 +0000)]
Disable the procfs setup stuff, because it is having grief with obdecho.
adilger [Sun, 8 Sep 2002 08:55:20 +0000 (08:55 +0000)]
Add obdecho so I don't get a complaint from the proc stuff.
adilger [Sun, 8 Sep 2002 08:51:34 +0000 (08:51 +0000)]
Update scripts to not do vector reads on BA OSTs.
Do some quickie tests in -brw so we know things are at least close to good.
adilger [Sun, 8 Sep 2002 08:24:57 +0000 (08:24 +0000)]
Like runregression-net.sh, but only bulk I/O, and lots of it. It does
reads immediately following the write tests, to catch errors early.
Uses 64GB of space on a real OST.
adilger [Sun, 8 Sep 2002 08:07:16 +0000 (08:07 +0000)]
Fix case where only the OSTNODE is set (test_brw).
adilger [Sun, 8 Sep 2002 07:59:39 +0000 (07:59 +0000)]
Add echo_open() and echo_close() to keep test_brw happy.
adilger [Sun, 8 Sep 2002 01:28:52 +0000 (01:28 +0000)]
Fix 32-bit truncation of test_brw offset calculation.
adilger [Sun, 8 Sep 2002 01:18:08 +0000 (01:18 +0000)]
Updated test_brw user program. Checks args better, uses a long long for
the iteration count, handles default args properly.
adilger [Sun, 8 Sep 2002 00:00:33 +0000 (00:00 +0000)]
Allow test_brw to run in either read-only, write-only, or read-write mode,
with or without O_DIRECT. The read-only mode allows us to offline verify
a file that was created from lctl test_brw write independent of Lustre.
shaver [Sat, 7 Sep 2002 21:19:48 +0000 (21:19 +0000)]
- Add hooks for post-replay fixup on ptlrpc_request.
- Use those hooks to update fh data in client filehandles when replaying
open.
Recovery can now failover to a standby/rebooted MDS and complete a
file write, attr-update and close successfully. HAND.
shaver [Sat, 7 Sep 2002 21:02:39 +0000 (21:02 +0000)]
- Handle setting of existing EA by retrying without XATTR_CREATE.
- Check RESEND instead of RECOVERY in ptlrpc_check_reply, because that's
what ptlrpc_resend_req sets.
- Don't "commit" in-flight requests.
- Update imp_handle when sending delayed requests after recovery.
Recovery now successfully replays enough to resume the request stream
for the client process. (That stream may, in the close case, refer to
stale data, but that's the next bit.)
pschwan [Sat, 7 Sep 2002 20:47:17 +0000 (20:47 +0000)]
- lprocfs_dereg_dev is failing, which prevented cleanup. This is VERY BAD, so
I made it continue with cleanup instead of aborting
rread [Sat, 7 Sep 2002 20:44:25 +0000 (20:44 +0000)]
* always recreat loopback backing file when --reformat is set
adilger [Sat, 7 Sep 2002 08:58:54 +0000 (08:58 +0000)]
Clean up compiler warnings for 64-bit systems where __u64 is a long and
not a long long like on 32-bit systems. From Evan Felix, PNL.
adilger [Sat, 7 Sep 2002 07:58:52 +0000 (07:58 +0000)]
Add a new type, obd_uuid_t (char[37]) to replace uuid_t, which means
something different for the rest of the kernel and user-space too.
This should be used in all places where we specify char[37] directly.
I have the full change for this already implemented, but I'm going
slowly to avoid causing too many conflicts for Mike.
adilger [Sat, 7 Sep 2002 07:52:46 +0000 (07:52 +0000)]
Change internal statfs calls to pass struct obd_statfs as a parameter
instead of the Linux struct statfs. This allows us to have 64-bit
clean statfs data all the way to the VFS, and avoids problems like
block count overflows in intermediate math in LOV and such.
We still need to resolve the VFS interface to statfs, as it limits the
output to 16TB on 32-bit platforms (4G x 4kb blocks). The likely
answer is to shift the blocksize up, and the blocks counts down until
we fit in under 4G total blocks. For MCR this will be around a blocksize
of 64kB which is nice to specify as the block size anyways.
adilger [Sat, 7 Sep 2002 07:43:02 +0000 (07:43 +0000)]
Move knowledge of the LOV metadata/message structures out of mdc_getlovinfo()
and put it into lov_connect. This will be needed when we have different
kinds of LOVs that store their data differently. We still need to do
something about giving the LOV a "name" so that it can distinguish its data
on the MDS from other LOV's that there.
adilger [Sat, 7 Sep 2002 07:41:03 +0000 (07:41 +0000)]
Quiet a few printk's and turn them into CDEBUGs so they don't go to console.
Remove check for kernel code older than 2.3 - lustre will never go there.
* Add warning for lprocfs_bfs_srch(): having recursive code in the kernel is
* extremely frowned upon, because there is a very limited kernel stack size
* (only 8kB). That has to be enough, not only for your functions, but all
* other functions in that call trace, as well as interrupt handlers and such.
Remove extraneous line continuation characters.
Whitespace reformatting to match the rest of the lustre code.
adilger [Sat, 7 Sep 2002 06:47:07 +0000 (06:47 +0000)]
Invoke shell scripts via "sh" because CVS doesn't keep file perms well.
Add some extra basic checks after the cleanup.
adilger [Sat, 7 Sep 2002 06:32:45 +0000 (06:32 +0000)]
Add objid to test_brw output.
Allow objid for test_getattr to have a "t" (thread) prefix for symmetry
with test_brw, so that it will be possible to do a bunch of creates in
runregression net, and have the BRWs run I/O on different objects in
each thread.
adilger [Sat, 7 Sep 2002 06:01:49 +0000 (06:01 +0000)]
Cosmetic.
adilger [Sat, 7 Sep 2002 05:28:14 +0000 (05:28 +0000)]
Oops, missing part of change.
adilger [Sat, 7 Sep 2002 05:25:50 +0000 (05:25 +0000)]
Disable vector reads until the BA OSTs are updated (tomorrow, hopefully).
Don't do setups and cleanups for each loop because of problems therein...
rread [Sat, 7 Sep 2002 00:23:30 +0000 (00:23 +0000)]
* MDC element is no longer created in config. The MDC UUIDS are generated
by lconf when a client is started. This required some Big Ugly Hacks that
I hope to clean up in the near future.
* LOVs and OSC are treated uniformly. --osc lov1 will now work as expected.
These changes require config files to be recreated to work properly with lconf. No
changes were made to the lmc interface, so the config scripts are unchanged.
rread [Sat, 7 Sep 2002 00:20:25 +0000 (00:20 +0000)]
use a larger buffer for device_list
adilger [Fri, 6 Sep 2002 23:48:37 +0000 (23:48 +0000)]
Call open/close on an object before trying to read/write it.
adilger [Fri, 6 Sep 2002 23:47:26 +0000 (23:47 +0000)]
Add open/close ioctls to obdclass.
thantry [Fri, 6 Sep 2002 23:04:34 +0000 (23:04 +0000)]
Updated makefile to include first cut for LProcFS
thantry [Fri, 6 Sep 2002 23:03:05 +0000 (23:03 +0000)]
Commented proc code
thantry [Fri, 6 Sep 2002 23:00:45 +0000 (23:00 +0000)]
Updated obd to include profiling support
thantry [Fri, 6 Sep 2002 22:59:52 +0000 (22:59 +0000)]
Header file for LprocFS
thantry [Fri, 6 Sep 2002 22:58:30 +0000 (22:58 +0000)]
Updated lprocfs.c. First cut
thantry [Fri, 6 Sep 2002 22:57:14 +0000 (22:57 +0000)]
Updating class_obd.c for first delivery of lprocfs
adilger [Fri, 6 Sep 2002 22:23:49 +0000 (22:23 +0000)]
Make obdecho return 64-bit objids so we can check 64-bit paths better.
adilger [Fri, 6 Sep 2002 22:22:09 +0000 (22:22 +0000)]
Fix for test_brw problems with BA OST.
adilger [Fri, 6 Sep 2002 22:08:50 +0000 (22:08 +0000)]
Fix a couple long long objid parsings, not the read fix yet, though.
adilger [Fri, 6 Sep 2002 21:30:45 +0000 (21:30 +0000)]
Fix create oops (enough for single-OST testing).
pschwan [Fri, 6 Sep 2002 16:16:33 +0000 (16:16 +0000)]
Little cleanups:
- made ll_direct_IO static, because I can
- cleaned up some cut-and-paste bugs in LOV error messages
- fix, I think, the common crash cleaning up /proc entries multiple times
- remove some debugging code from eric's awesome callback race bugfix
eeb [Fri, 6 Sep 2002 15:58:41 +0000 (15:58 +0000)]
fixed bulk source callback race
shaver [Fri, 6 Sep 2002 15:12:48 +0000 (15:12 +0000)]
Fix cvsignore.
shaver [Fri, 6 Sep 2002 15:11:19 +0000 (15:11 +0000)]
- Chain imports on connection, like exports.
- Need to be able to go import->obd during recovery.
- Rename mdc to cli in client_obd_connect so that I don't get confused as
often.
- Use ptlrpc_req_finished instead of ptlrpc_free_req in a few places where
we need to keep the request around for possible replay during recovery.
- Flag opens as needing replay.
- Rewrite request address and cookie during replay and resend, to handle
the recovery case (the connection handle changes when the server reboots,
for example).
- ll_reconnect now correctly reconnects with a new server (possibly with
a new server UUID). Tested for MDS, "obviously correct" for OST as well.
- no more references to mdc_getstatus or sbi2mdc in the (now fs-distinct)
ll_reconnect_recover code.
We can now successfully reconnect to a rebooted MDS and begin replay.
Need more work (on MDS or client, not clear yet) to make the replay
succeed.
gord-fig [Fri, 6 Sep 2002 14:02:49 +0000 (14:02 +0000)]
Remove page.c and debug.c from EXTRA_DIST. Please remember to check tinderbox.lustre.org/ after your commits.
eeb [Fri, 6 Sep 2002 10:43:15 +0000 (10:43 +0000)]
premature service teardown bugfix
adilger [Fri, 6 Sep 2002 09:46:45 +0000 (09:46 +0000)]
At least acknowledge that statfs wraps at 16TB filesystems. We could
probably increase blocksize until the block counts fit into a long,
maybe up to some limit (64kB = 256TB max, or 64kB x stripecount = much
larger).
pschwan [Fri, 6 Sep 2002 03:33:07 +0000 (03:33 +0000)]
Small open/close test to help narrow down our LOV bug
rread [Thu, 5 Sep 2002 23:21:27 +0000 (23:21 +0000)]
delete the self uuid first, then disconnect all.
pschwan [Thu, 5 Sep 2002 22:05:00 +0000 (22:05 +0000)]
Back out some lprocfs changes to common code until they can be reviewed and
commented on
thantry [Thu, 5 Sep 2002 21:45:54 +0000 (21:45 +0000)]
Updated makefile, added LprocFS, locking library support
thantry [Thu, 5 Sep 2002 21:43:01 +0000 (21:43 +0000)]
Added counter space in obd_device
thantry [Thu, 5 Sep 2002 21:39:43 +0000 (21:39 +0000)]
Removed LDLM references to old proc FS
thantry [Thu, 5 Sep 2002 21:36:28 +0000 (21:36 +0000)]
Updated top level obdclass file for LProcFS
thantry [Thu, 5 Sep 2002 21:20:50 +0000 (21:20 +0000)]
Re-added lock(s) as library
thantry [Thu, 5 Sep 2002 21:18:15 +0000 (21:18 +0000)]
Header file for /proc/lustre: adding to tree
thantry [Thu, 5 Sep 2002 21:12:44 +0000 (21:12 +0000)]
Initial implementation for /proc/lustre
adilger [Thu, 5 Sep 2002 19:57:59 +0000 (19:57 +0000)]
Only connect to the MDS if we are setting up an MDC, like wise OST/OSC.
pschwan [Thu, 5 Sep 2002 19:14:59 +0000 (19:14 +0000)]
- debug.c was only used by obdclass, so I moved it there
- some of page.c wasn't used by anything, so I removed those bits; much of
page.c was only used in one module, so those bits moved there; two functions
were shared, so now they're in obdclass; page.c is no more.
- stop building and distributing obdfs
- little warning and formatting fixups that I noticed along the way
rread [Thu, 5 Sep 2002 18:33:42 +0000 (18:33 +0000)]
add close_uuid
rread [Thu, 5 Sep 2002 18:22:47 +0000 (18:22 +0000)]
add page.c symink to lov until Phil can stop the madness
eeb [Thu, 5 Sep 2002 16:33:51 +0000 (16:33 +0000)]
Fixed service request buffer race
pschwan [Thu, 5 Sep 2002 07:05:41 +0000 (07:05 +0000)]
- Fixed some error messages in the LOV
- lov_brw was using the same callback structure for two sets of callbacks, thus
overloading the refcount and causing serious problems (sometimes failing to
free the callback data, and I could believe sometimes freeing it too soon).
Alas, this does not appear to completely fix the iozone bugs we're seeing.
rread [Thu, 5 Sep 2002 06:24:02 +0000 (06:24 +0000)]
new option: --dump <file> will dump debug log to <file> during cleanup
shaver [Thu, 5 Sep 2002 00:33:19 +0000 (00:33 +0000)]
- Rewrote connmgr_iocontrol to handle UUID specification and changing.
- connmgr now uses class_connect and class_disconnect to build dummy exports,
so that lctl can probe before newconn.
rread [Wed, 4 Sep 2002 23:30:03 +0000 (23:30 +0000)]
added newconn to lctl
shaver [Wed, 4 Sep 2002 23:07:40 +0000 (23:07 +0000)]
- Update jt_obd_newconn to handle the new IOC_RECOVD_NEWCONN semantics.
- Update obdctl out of habit.
adilger [Wed, 4 Sep 2002 20:32:10 +0000 (20:32 +0000)]
Commit braino fix that I already fixed locally.
adilger [Wed, 4 Sep 2002 19:38:47 +0000 (19:38 +0000)]
Get the directory inode semaphore, just to be copasetic with VFS locking rules
(we don't use this for anything other than fs-init, so it isn't a big deal).
rread [Wed, 4 Sep 2002 19:17:32 +0000 (19:17 +0000)]
add hostname to gdb script
rread [Wed, 4 Sep 2002 18:08:24 +0000 (18:08 +0000)]
Add note to --format help that the autoformat feature is currently disabled
rread [Wed, 4 Sep 2002 18:04:58 +0000 (18:04 +0000)]
remove old message about autoformat
adilger [Wed, 4 Sep 2002 16:30:40 +0000 (16:30 +0000)]
Remove compiler warning.
adilger [Wed, 4 Sep 2002 16:29:14 +0000 (16:29 +0000)]
Remove fancy but broken statistics from obdecho.
pschwan [Wed, 4 Sep 2002 15:18:31 +0000 (15:18 +0000)]
- I introduced a bug in the LOV, for the case where you're writing less than
stripe_count stripes; fixed.
- Match bulk and reply buffers by source NID, which doesn't hurt and may even
fix a bug.
gord-fig [Wed, 4 Sep 2002 15:05:52 +0000 (15:05 +0000)]
Use tex2pdf.
adilger [Wed, 4 Sep 2002 14:05:21 +0000 (14:05 +0000)]
Update changelog for new release.
adilger [Wed, 4 Sep 2002 11:44:00 +0000 (11:44 +0000)]
Fix same problem as before - we are dereferencing a null connection...
adilger [Wed, 4 Sep 2002 09:28:54 +0000 (09:28 +0000)]
Minor fixup - don't memcpy data from past end of string.
Doesn't affect anyone except me, I think.
rread [Wed, 4 Sep 2002 09:11:28 +0000 (09:11 +0000)]
* stripe size in the config file was being ignored and only the default
value of 64k was being used. Fixed this, but check your configs, as
some of them are set to a very low stripe size (4096) for testing.
adilger [Wed, 4 Sep 2002 07:19:32 +0000 (07:19 +0000)]
New improved runregression script.
It creates an OST object at the start of the test and does the write test
before the read test. This should allow it to run against a real OST.
It also does vector I/O testing for BRW read/write tests.
pschwan [Wed, 4 Sep 2002 02:55:04 +0000 (02:55 +0000)]
the callback data refcount should be the stripe count, but bufcount. fixed.
pschwan [Wed, 4 Sep 2002 02:10:45 +0000 (02:10 +0000)]
Use pga[i].off instead of pga[i].pg->index. Even though Andreas just fixed
the page index, the OSC uses .off and I'd rather behave exactly like the OSC.
Baby steps towards iozone-over-many-stripes; it writes one 192k stripe before
timing out now.
adilger [Wed, 4 Sep 2002 01:57:22 +0000 (01:57 +0000)]
"fix" the page->index value for direct_IO pages.
shaver [Wed, 4 Sep 2002 01:19:14 +0000 (01:19 +0000)]
- initialize LDLM client data on obdfilter, not ost, because that's where
the ldlm requests come from.
braam [Wed, 4 Sep 2002 00:23:30 +0000 (00:23 +0000)]
- more recovery API stuff
- special API description
adilger [Wed, 4 Sep 2002 00:16:44 +0000 (00:16 +0000)]
Fix thinko in export cleanup.
pschwan [Wed, 4 Sep 2002 00:09:00 +0000 (00:09 +0000)]
Disable the reply type check until bluearc has a chance to integrate that fix.
adilger [Tue, 3 Sep 2002 23:53:01 +0000 (23:53 +0000)]
Initialize the obd spinlock and import list, each time a device is attached.
Do only the minimal setup of obd_dev at module init time (it is already
zero'd for us by virtue of being a global variable).
rread [Tue, 3 Sep 2002 23:09:48 +0000 (23:09 +0000)]
* move recover.c from llite to ptlrpc
rread [Tue, 3 Sep 2002 23:04:22 +0000 (23:04 +0000)]
* fix module cleanup, previous commit broke it
pschwan [Tue, 3 Sep 2002 22:59:30 +0000 (22:59 +0000)]
- remove the PTL_RPC_TYPE_* in favour of PTL_RPC_MSG_*
- request->rq_type is used to tell the rpc subsystem which buffers to use, so
users of ptlrpc set that
- ptlrpc will fill in request->rq_reqmsg->type or repmsg->type, so it's now
done in exactly one place
- it was impossible to get PTL_RPC_MSG_ERR before, because we clobbered it in
ptlrpc_reply; fixed.
- move the incoming-request type verification into the service
- add some incoming-reply type verification to ptlrpc_queue_wait. Just in case.
adilger [Tue, 3 Sep 2002 21:48:15 +0000 (21:48 +0000)]
Copyright update, remove old comment
adilger [Tue, 3 Sep 2002 21:47:27 +0000 (21:47 +0000)]
Fix header problem for building on RH kernels.
eeb [Tue, 3 Sep 2002 21:41:26 +0000 (21:41 +0000)]
reply message initialisation fix
pschwan [Tue, 3 Sep 2002 21:15:19 +0000 (21:15 +0000)]
ldlm_handle_convert was putting the lock immediately onto the conversion queue and
then returning with flags=0, instead of flags=LDLM_FL_BLOCK_CONV. Thus, the client
believed that the conversion had succeeded immediately, marked the lock accordingly,
and continued on its merry way, even if it didn't actually have the lock.