Whamcloud - gitweb
adilger [Fri, 8 Nov 2002 18:25:53 +0000 (18:25 +0000)]
Highmem deadlock avoidance (server version):
- reserve highmem pages before we start doing kmaps to avoid deadlocks
with multiple threads reserving vectors of pages
pschwan [Fri, 8 Nov 2002 02:10:58 +0000 (02:10 +0000)]
Dramatically increase the randomness of MDC UUIDs
braam [Fri, 8 Nov 2002 00:11:51 +0000 (00:11 +0000)]
- add something that prints the time every 10,000 creates
adilger [Thu, 7 Nov 2002 23:54:17 +0000 (23:54 +0000)]
Use the fs-method statfs, so we can take into account the EA space needs
for extN (1 block for each inode, excluding special files).
shaver [Thu, 7 Nov 2002 23:37:32 +0000 (23:37 +0000)]
Make sure that we set last_xid and last_committed on replies from LDLM,
operations, or intent-only metadata loads will result in unbounded client
memory growth.
adilger [Thu, 7 Nov 2002 23:23:37 +0000 (23:23 +0000)]
Fix (or a workaround that will hide the real bug) for bug 322.
We are calling mdc_blocking_ast() to clean up an inode that is already
being cleaned up elsewhere. This is the result of ldlm_cli_cancel_unused()
being called from two places at the same time:
- ll_prepare_recovery()->prepare_mdc()->ldlm_cli_cancel_unused()
- ll_clear_inode()->mdc_cancel_unused()->ldlm_cli_cancel_unused()
There is still a small race where the ll_clear_inode() RPC could have
completed and "inode" is garbage, but since we are in recovery this
is highly unlikely.
adilger [Thu, 7 Nov 2002 21:41:09 +0000 (21:41 +0000)]
file mkdirmany.c was initially added on branch b_symlink.
pschwan [Thu, 7 Nov 2002 21:26:03 +0000 (21:26 +0000)]
Fix build-breaking thinko
pschwan [Thu, 7 Nov 2002 21:15:07 +0000 (21:15 +0000)]
- land b_symlink on HEAD
- print peer when entering recovery, since MDC uuids are no longer descriptive
shaver [Thu, 7 Nov 2002 21:03:27 +0000 (21:03 +0000)]
Only store replayable (MDC, with transno) requests on the sending_head after
they've received a reply.
braam [Thu, 7 Nov 2002 20:46:28 +0000 (20:46 +0000)]
- capability fixes on head
- LL_SAVE_INTENT fixes
braam [Thu, 7 Nov 2002 18:25:19 +0000 (18:25 +0000)]
file createmany.c was initially added on branch b_symlink.
pschwan [Thu, 7 Nov 2002 18:14:05 +0000 (18:14 +0000)]
0.5.16+ updates
adilger [Thu, 7 Nov 2002 09:08:26 +0000 (09:08 +0000)]
Comment clarification.
adilger [Thu, 7 Nov 2002 09:07:41 +0000 (09:07 +0000)]
Whitespace.
pschwan [Thu, 7 Nov 2002 06:22:15 +0000 (06:22 +0000)]
b=141,205,323
- When the MDS returns an intent lock to us, check to see if we already have a
matching one. If so, cancel the new one.
- Add a new mode to ldlm_lock_match, which allows you to pass in an existing
lock handle. It will look for any matches among other locks.
pschwan [Thu, 7 Nov 2002 04:40:21 +0000 (04:40 +0000)]
small fixups to revalidate2 lock matching
braam [Thu, 7 Nov 2002 04:29:45 +0000 (04:29 +0000)]
- add another sanity test
- test if we have a lock already in revalidate2
pschwan [Thu, 7 Nov 2002 04:23:31 +0000 (04:23 +0000)]
b=290,311
- call obd_cancel_unused with the correct parameters
- only call it for regular files (those with non-NULL lli->lli_smd)
braam [Thu, 7 Nov 2002 04:03:40 +0000 (04:03 +0000)]
another shot at managing dentries
pschwan [Thu, 7 Nov 2002 03:25:43 +0000 (03:25 +0000)]
b=311
- Drop unused data locks in clear_inode
- Fix for directory and inode counts and link counts
pschwan [Thu, 7 Nov 2002 00:32:27 +0000 (00:32 +0000)]
somehow I keep screwing this up, all over a 3-line change.
pschwan [Thu, 7 Nov 2002 00:27:20 +0000 (00:27 +0000)]
merging all noncontroversial pieces of b_symlink into HEAD
pschwan [Thu, 7 Nov 2002 00:21:23 +0000 (00:21 +0000)]
merging all noncontroversial pieces of b_symlink into HEAD
pschwan [Wed, 6 Nov 2002 23:52:07 +0000 (23:52 +0000)]
b=255
- Don't call cancel_unused until the last CLOSE for a given inode.
rread [Wed, 6 Nov 2002 07:57:09 +0000 (07:57 +0000)]
- wholesale renaming of the brw associated callback variables,
structures and functions. Primarily distinguish between:
- portals event handlers (no longer called callbacks)
- brw callbacks
rread [Wed, 6 Nov 2002 07:49:02 +0000 (07:49 +0000)]
* init script designed for MCR by Gord Eagle, and a useful example
pschwan [Wed, 6 Nov 2002 07:28:35 +0000 (07:28 +0000)]
Add kernel patch version checking
braam [Wed, 6 Nov 2002 01:30:10 +0000 (01:30 +0000)]
file stat.c was initially added on branch b_symlink.
braam [Wed, 6 Nov 2002 00:23:21 +0000 (00:23 +0000)]
- the root dentry should not be uhashed, it is always a valid dentry
- this is a fix for bug 341
braam [Tue, 5 Nov 2002 23:31:57 +0000 (23:31 +0000)]
- sanity check for intent setting
adilger [Tue, 5 Nov 2002 20:17:49 +0000 (20:17 +0000)]
Prudent check for NULL intent before dereferencing.
adilger [Tue, 5 Nov 2002 19:58:42 +0000 (19:58 +0000)]
Minor type fixup to match o_brw.
pschwan [Tue, 5 Nov 2002 19:18:19 +0000 (19:18 +0000)]
- Replaces the LDLM lock counters (in /proc/ldlm/)
- Removes the second LDLM import that Peter added, in favour of doing a
last-minute fixup of the portal numbers in ldlm_cli_cancel
shaver [Tue, 5 Nov 2002 18:37:28 +0000 (18:37 +0000)]
- Fix up c_recovd_data list_head management, to avoid NULL dereferences in
recovd_conn_manage (bug 338).
adilger [Tue, 5 Nov 2002 08:50:56 +0000 (08:50 +0000)]
Minor fix so that the printed output is actually what we want to run.
donmilos [Tue, 5 Nov 2002 01:48:17 +0000 (01:48 +0000)]
Issue# 330: Approver: Andreas - New utility to find files affected by loss of an OBD.
adilger [Mon, 4 Nov 2002 21:38:46 +0000 (21:38 +0000)]
Peter tells me that the removal of "-O2" from the i386 archdep is the actual
source of the QUOTA problems.
adilger [Mon, 4 Nov 2002 21:36:18 +0000 (21:36 +0000)]
Include quotaops.h in the headers that we munge for extN to avoid issues
with "extern __inline__" declarations therein.
donmilos [Mon, 4 Nov 2002 21:25:49 +0000 (21:25 +0000)]
Bug# 329: Approver: Andreas - obd_ioctl_unpack() causes segmentation violation.
pschwan [Mon, 4 Nov 2002 20:42:05 +0000 (20:42 +0000)]
minor comment fixup
pschwan [Mon, 4 Nov 2002 00:31:03 +0000 (00:31 +0000)]
b=320
disable lprocfs, since it crashes on router nodes
adilger [Mon, 4 Nov 2002 00:27:13 +0000 (00:27 +0000)]
Don't include lprocfs_ll_rd() at all. lprocfs defines a no-op function
stub for this. When lprocfs isn't available, we will get nothing from
these functions, but I don't think that is a big deal.
pschwan [Sun, 3 Nov 2002 20:51:44 +0000 (20:51 +0000)]
The "random" addition to the UUID were in fact not very random: dev is time-
synchronized, and this caused big trouble.
I fixed this by seeding the PRNG from /dev/urandom at startup; my first
multi-line python hackery, so I hope I didn't pooch it.
braam [Sat, 2 Nov 2002 23:09:11 +0000 (23:09 +0000)]
- minor fixes to the tests
shaver [Sat, 2 Nov 2002 09:08:58 +0000 (09:08 +0000)]
- Replace client-side generation fixup with bug 304's righteous assertion of
generations numbers at recreate-time. Single-client recovery should now be
_that_much_ more robust. (Bug 299.)
braam [Sat, 2 Nov 2002 04:35:01 +0000 (04:35 +0000)]
new test with lots of very basic operations
thantry [Sat, 2 Nov 2002 02:41:32 +0000 (02:41 +0000)]
1. Fixed cleanup issue where I was *indeed* accesing a zapped pointer.
2. Removed typedef
3. lproc-snmp back in.
braam [Sat, 2 Nov 2002 01:09:28 +0000 (01:09 +0000)]
- fixes for dentry problems from Phil and myself
- separate cancel/callback threads to avoid starvation
- fix for broken symlinks
rread [Sat, 2 Nov 2002 00:51:43 +0000 (00:51 +0000)]
* add a bit of randomness to the MDC uuid
adilger [Sat, 2 Nov 2002 00:26:06 +0000 (00:26 +0000)]
Build properly with lprocfs disabled.
rread [Fri, 1 Nov 2002 23:42:36 +0000 (23:42 +0000)]
* change init_portals to use inter_module_get() instead of
inter_module_get_request(), becuase we don't want to the kernel to load
any old nal, we want to use just the one that was loaded for us by
lconf.
* add hook for toenal
rread [Fri, 1 Nov 2002 22:46:56 +0000 (22:46 +0000)]
* more bits for toenal
rread [Fri, 1 Nov 2002 22:39:30 +0000 (22:39 +0000)]
* rename startlevel and endlevel to minlevel and maxlevel
adilger [Fri, 1 Nov 2002 22:33:08 +0000 (22:33 +0000)]
Revert Mike's recovery changes from LOV, for the greater good of being
able to use LOV again.
adilger [Fri, 1 Nov 2002 21:19:08 +0000 (21:19 +0000)]
Yes, we should in fact MOD_DEC_USE_COUNT there.
braam [Fri, 1 Nov 2002 19:51:30 +0000 (19:51 +0000)]
file sanity.sh was initially added on branch b_find_alias.
adilger [Fri, 1 Nov 2002 19:18:17 +0000 (19:18 +0000)]
Disable lprocfs until it can clean up.
rread [Fri, 1 Nov 2002 19:11:57 +0000 (19:11 +0000)]
* initial checkin
thantry [Fri, 1 Nov 2002 17:23:18 +0000 (17:23 +0000)]
Lproc-snmp code drop
rread [Fri, 1 Nov 2002 02:59:48 +0000 (02:59 +0000)]
* 1st attempt to prevent duplicate devices being started.
* also don't cleanup a device if it doesn't exist.
rread [Fri, 1 Nov 2002 02:32:38 +0000 (02:32 +0000)]
Similar to local.sh, but with 2 mount points of the same filesystem.
rread [Thu, 31 Oct 2002 22:24:34 +0000 (22:24 +0000)]
Use the right fstype for the kernel being used.
thantry [Thu, 31 Oct 2002 20:08:14 +0000 (20:08 +0000)]
Removed the lprocfs_snmp.h file. Need to get rid of "snmp" usage
inside lustre. New file is lprocfs_status.h
thantry [Thu, 31 Oct 2002 20:05:51 +0000 (20:05 +0000)]
Changing the name from lprocfs_snmp.h to lprocfs_status.h
rread [Thu, 31 Oct 2002 20:00:28 +0000 (20:00 +0000)]
* cleanup multiple MDC's correctly
rread [Thu, 31 Oct 2002 17:50:53 +0000 (17:50 +0000)]
* teach lconf about ktoenal.o
radhikav [Thu, 31 Oct 2002 17:18:47 +0000 (17:18 +0000)]
Modified the makefile.am to allow creation of only lustre-HOWTO.txt by default.
'make docs' will build the lustre.pdf document.
pschwan [Thu, 31 Oct 2002 15:22:33 +0000 (15:22 +0000)]
many places in the reint path did not use generation numbers with their
locks; fixed.
adilger [Thu, 31 Oct 2002 07:39:18 +0000 (07:39 +0000)]
Hack to force an MDS flush and also get the last_xid/last_committed from
the MDS, so the client can flush its pending RPC requests before umount.
Also, make mdc_statfs() into a OBD method, just because we can.
adilger [Thu, 31 Oct 2002 07:12:36 +0000 (07:12 +0000)]
Quiet down the lprocfs warnings a bit until Hari gets new code into the tree.
adilger [Thu, 31 Oct 2002 06:58:34 +0000 (06:58 +0000)]
Robert's mutli-MDS fix.
adilger [Thu, 31 Oct 2002 05:30:10 +0000 (05:30 +0000)]
Minor update to mds_create_pack(): use "dir" instead of "inode" so that it
is clear what we are packing into the cr_fid.
adilger [Wed, 30 Oct 2002 22:39:44 +0000 (22:39 +0000)]
More ignores.
adilger [Wed, 30 Oct 2002 22:38:39 +0000 (22:38 +0000)]
Ignore more generated files.
pschwan [Wed, 30 Oct 2002 22:09:41 +0000 (22:09 +0000)]
Demote the 'sending list' CERRORs to CDEBUGs, so that it's easier to spot bugs
in console output.
pschwan [Wed, 30 Oct 2002 21:59:59 +0000 (21:59 +0000)]
b=300
MDT wasn't calling 'unregister_type'; fixed
adilger [Wed, 30 Oct 2002 21:52:44 +0000 (21:52 +0000)]
Whitespace and a small comment.
rread [Wed, 30 Oct 2002 21:03:43 +0000 (21:03 +0000)]
* change device_list to use the command line interface instead of stdin
adilger [Wed, 30 Oct 2002 20:56:32 +0000 (20:56 +0000)]
- Fix OBD_IOC_OPEN to return the obdo, so user-space has a file handle,
and runregression-brw.sh can run against obdfilter again.
- Destroy the IPC shmem segment so we can run more than 160 runtests in a row.
- Allow COUNT to be specified, so you can run smaller runregression-brw.sh
against obdfilter or BA OSTs and not run out of disk space.
shaver [Wed, 30 Oct 2002 20:38:28 +0000 (20:38 +0000)]
- Bug 296: remove LDLM_MDSINTENT to fix mismatches with LDLM_PLAIN locks.
We now use LDLM_FL_HAS_INTENT in flags, instead.
- Remove some over-verbose debugging in lookup2_finish.
- Automatically reactivate OSC when recovery reconnects successfully.
braam [Wed, 30 Oct 2002 20:25:03 +0000 (20:25 +0000)]
- minor fixes to get mount to roll in 2.5
pschwan [Wed, 30 Oct 2002 18:58:41 +0000 (18:58 +0000)]
"mds" was in SUBDIRS twice--this is bad.
rread [Wed, 30 Oct 2002 18:38:36 +0000 (18:38 +0000)]
* add --fstype arg to both --mds and --ost
eg:
lmc ... --node node --fstype ext3 --mds mds1 $MDSDEV $MDSSIZE
lmc ... --node node --fstype ext3 --ost $OSTDEV $OSTSIZE
pschwan [Wed, 30 Oct 2002 08:29:45 +0000 (08:29 +0000)]
Update changelog
pschwan [Wed, 30 Oct 2002 08:20:49 +0000 (08:20 +0000)]
b=201
b=285
- Added generation numbers to MDS locks (still need to for OSC locks, bug 294)
- fixup the inode pointer in the ldlm_lock after intent gives us a lock on a
different resource (bug 285)
- cancel locks when the inodes are flushed from the cache (bug 201)
- fix serious cache coherancy bugs by really tying locks to dentries:
- always return 0 from revalidate2 for a negative dentry, forcing lookup2
- when MDS locks are cancelled, unhash the associated dentries (but do NOT
remove them from the aliases list)
- avoid calling the cancellation callback at shutdown and clear_inode time,
by adding yet another flag, this time to cancel_unused
- lookup2 searches for old dentries that may satisfy a new request, and may
reuse a dentry that we previously unhashed
We broke hard links even more than they were before--you've been warned!
shaver [Wed, 30 Oct 2002 04:16:16 +0000 (04:16 +0000)]
Good citzenship.
shaver [Wed, 30 Oct 2002 03:31:47 +0000 (03:31 +0000)]
- Bugzilla 214: Have LOV do its own timeout management, so that all OSCs get
removed correctly, _and_ we don't crash as soon as we try to kick off
recovery. What a deal!
- Fix removal of OSC from LOV on OST failure (silly & and type-smashing
list_head macros).
- Lots of comments in lov_brw, so I don't have to figure it out from first
principles next time. (I think they're correct, but Andreas will review to
make sure.)
- Skip inactive OSCs in lov_statfs, because otherwise we return -EIO and
the caller will ignore all of the data we get from the active/working OSCs.
- A bit more bulletproofing of the sync_io_timeout case -- if you see that
message, please reopen the bug.
- Be a little smarter about double-failed connections. Might make
failure-in-recovery work better, and will definitely make multiply-detected
connection failure work better.
rread [Wed, 30 Oct 2002 01:40:16 +0000 (01:40 +0000)]
* create a minimal MDT
- only setup once on a node
- one thead pool for all MDS's
- theads call mds_handle directly
* changes to lconf to setup/cleanup MDT
adilger [Wed, 30 Oct 2002 00:15:12 +0000 (00:15 +0000)]
Allow unlink to be done on another node, to test multi-client openunlink
handling on OST.
braam [Tue, 29 Oct 2002 23:52:22 +0000 (23:52 +0000)]
unimportant change to understand a feature of CVS
adilger [Tue, 29 Oct 2002 23:37:35 +0000 (23:37 +0000)]
Make the openunlink messages consistent.
adilger [Tue, 29 Oct 2002 23:35:40 +0000 (23:35 +0000)]
Just a minor change to make it clear what the LOV config parameters are.
adilger [Tue, 29 Oct 2002 23:33:59 +0000 (23:33 +0000)]
Return an LDLM error code from osc_enqueue, just to be clear at the caller
that we are getting back the right thing (ELDLM_OK == 0).
adilger [Tue, 29 Oct 2002 23:20:17 +0000 (23:20 +0000)]
Allow uml.sh to generate a 1-server, 3-client config nicely if desired.
rread [Tue, 29 Oct 2002 22:22:09 +0000 (22:22 +0000)]
* complete the getlovinfo compromise
rread [Tue, 29 Oct 2002 22:01:20 +0000 (22:01 +0000)]
* support for toenal
* support for more than one mds client
rread [Tue, 29 Oct 2002 21:58:31 +0000 (21:58 +0000)]
* use correct mds device in getlovinfo
adilger [Tue, 29 Oct 2002 20:34:31 +0000 (20:34 +0000)]
Simple script to monitor lustre/portals stuff in /proc/slabinfo
adilger [Tue, 29 Oct 2002 19:11:33 +0000 (19:11 +0000)]
Add filter_dops at the same point where we add dentry->d_fsdata, so that
the dentry data is always freed.
Remove redundant definition of PageUptodate().