Whamcloud - gitweb
braam [Thu, 21 Feb 2002 23:02:32 +0000 (23:02 +0000)]
- elimininate the system calls from filter obd
- use module_init macros not old style init_module functions
- remove unused crud from lustre_light.h use the good stuff more
- move directory readpage operations to dir.c
- cleanup rw.c significantly; it's actually understandable now.
- attribute handling: indicate to setattr to call truncate on OBD or not
- add osc destroy
- fix mds_reint_unlink (checked mode wrongly)
- add ll_delete_inode (to also go to the OST to remove data object)
- add truncate.c test program to tests
- avoid using ambigous READ/WRITE constants
behlendo [Thu, 21 Feb 2002 00:19:31 +0000 (00:19 +0000)]
Updated 2.4.17 obd kernel patch.
braam [Wed, 20 Feb 2002 00:56:39 +0000 (00:56 +0000)]
*** empty log message ***
braam [Tue, 19 Feb 2002 16:43:53 +0000 (16:43 +0000)]
This adds most of the metadata infrastructure: I think that all commands
(mkdir, link, symlink, rm, rmdir, mknod, mv etc) now work. Probably the
server code is not multithread safe (particularly for renames, the others
might be OK). I expect other fragilities and perhaps some errors with
setting {a,m,c}times, owners etc.
- add the beginning of an obd command that prints the information
for UML gdb (class/class_obd.c)
- try to ignore errors on creating symbolic links in Makefiles
- the patch is 2.4.17 again for ext2obd, ghees, let's fix that.
- to avoid confusion, null out the buffer of result nio's in prepw
- add other reintegration functions.
braam [Thu, 14 Feb 2002 05:33:26 +0000 (05:33 +0000)]
Oops; I added the wrong page.c
braam [Thu, 14 Feb 2002 05:31:24 +0000 (05:31 +0000)]
- changed back to using no optimization for UML modules, and no -g2
- set inode operations in object create
- s/WRITE/OBD_BRW_WRITE/ where applicable
- added much of the infrastructure for page reads/writes
- update inode->i_size on the MDS if extending the file
- removed extra mntget() which hung the loop device
- misc bugfixes
- changed notify_change to i_op->setattr; otherwise we get the mtime and ctime
from the mds
- set reply lengths (or your replies get dropped!)
braam [Wed, 13 Feb 2002 23:17:05 +0000 (23:17 +0000)]
class/class_obd.c: small OBD_ATTACHED sanity cleanup; OBD_SET_UP fix.
include/linux/lustre_net.h: set the LUSTRE_NAL back to socknal
include/linux/class_obd.h: added full license boilerplate, #define cleanup
include/linux/obd_osc: there was some confusion with obd_ost; fixed.
- added bits to structures for ost_request
- added OSC/OST portals communication
- added osc_setattr()
- added rpc_unregister_service in an attempt to get a handle on cleanup
- brought tests/ostreq.sh into the 1990s
- fixed a trivial obdctl setattr bug
braam [Wed, 13 Feb 2002 20:31:30 +0000 (20:31 +0000)]
- set_page_dirty ifdef for kernels on either side of 2.4.10
braam [Sat, 9 Feb 2002 05:12:51 +0000 (05:12 +0000)]
Minor fixes to
- setup scripts to do Elan stuff
- a few changes to page cache stuff for 2.4.9 (we finally know how to #if it)
- the usual battle the ext2obd patch
- removed aclocal.m4 (enhances immunity from automake versions)
pschwan [Thu, 7 Feb 2002 21:24:33 +0000 (21:24 +0000)]
New scripts to aid in testing; on one machine you should be able to run
sh tests/llmount-server.sh
and on another machine:
sh tests/llmount-client.sh
mount -t lustre_light -o device=3 none /mnt/obd
and do things like:
ls -ld /mnt/obd
chmod 777 /mnt/obd
This works now--even over the socknal, on an SMP kernel (although I haven't
tested it on an SMP machine)
You'll need to edit the SERVER variable in llmount-client.sh. If you want
to get really fancy, you'll make it a command-line option.
braam [Wed, 6 Feb 2002 18:25:41 +0000 (18:25 +0000)]
Minor cleanups and debugging statements added.
braam [Fri, 1 Feb 2002 19:32:21 +0000 (19:32 +0000)]
- zero out the request structure after allocation
- do readpage via portals
- added bulk moving functionality to rpc.c
- cleaned up one small MD leak
braam [Fri, 1 Feb 2002 18:20:06 +0000 (18:20 +0000)]
lllocalmount: startup and mount a lustre lite FS with no networking
llmountcleanup: indeed.
braam [Fri, 1 Feb 2002 18:18:06 +0000 (18:18 +0000)]
Minor bugfix to allow multiple networked operations:
- small fix to avoid crash in getattr
- properly unlink MDs and MEs after we send buffers
- fixups to the test scripts
braam [Thu, 31 Jan 2002 21:27:21 +0000 (21:27 +0000)]
- new RPC infrastructure:
- struct service with callback functions, buffers and Portals support
- services are Portal aware, but the old null transport may still work.
- lustre peer moved to Portals, as was all connection management
-
- fixed ptl entry constants for incoming REQUESTS, REPLIES for MDS, OST etc.
- all rpc's now have a peer destination (which can be NULL)
- replies are now pre-allocated
- the XID's are used to number transactions _and_ as match entries
- packet movement differentiates Portals and non-portals case.
- reception of packets uses the new Portals callbacks
- module initialization finds peer's by UUID. For now "mds" is a UUID.
- callbacks are used for (1) incoming requests (2) freeing outgoing packets
(3) incomding reply. Code reuse was possible.
- adapted all the test scripts (mdc and llmount)
braam [Wed, 30 Jan 2002 21:36:01 +0000 (21:36 +0000)]
- and the new files
braam [Wed, 30 Jan 2002 21:33:40 +0000 (21:33 +0000)]
Changes to request processing:
- all requests are now ptlrpc requests.
- better packing/unpacking once more
- new directory with Portals RPC infrastructure.
- wait and restart hooks event handlers
braam [Mon, 28 Jan 2002 19:06:15 +0000 (19:06 +0000)]
Changes for file creation and small fixes.
braam [Thu, 24 Jan 2002 08:04:57 +0000 (08:04 +0000)]
- more systematic unpacking/packing and handling of update records
- create working on MDS (needs some refinements to store data object id)
braam [Wed, 23 Jan 2002 18:20:23 +0000 (18:20 +0000)]
Add missing files, cleanup .cvsignore's
braam [Wed, 23 Jan 2002 04:59:12 +0000 (04:59 +0000)]
It's been a good day: chmod/chown and friends now work for Lustre Light.
- most of the changes are in the packing. It will take a little
bit more time before this completely settles I think, but we have
a pretty efficient system now.
- added initial infrastructure for MDS update records.
- the MDS server has a new routine to change the attributes: the associated
RPC call is MDS_REINT.
- Lustre Light is simpler than OBDFS since it doesn't have to
change inodes when it creates them: that's part of the MDS transactions we
send over -- removed many "change inode" and "setattr" variants.
braam [Mon, 21 Jan 2002 23:58:26 +0000 (23:58 +0000)]
assorted bug fixes and a working directory readpage routine
for Lustre Light.
braam [Mon, 21 Jan 2002 05:52:56 +0000 (05:52 +0000)]
Nasty cflag confusion in configure.ac.
braam [Mon, 21 Jan 2002 02:33:30 +0000 (02:33 +0000)]
defaults back to format
braam [Mon, 21 Jan 2002 02:31:40 +0000 (02:31 +0000)]
small fix.
braam [Mon, 21 Jan 2002 01:39:01 +0000 (01:39 +0000)]
fix the obdfssetup script to use obdext2 (not filter) for now
patch - revision one: pagecache_lock was missing. What else is missing?
braam [Mon, 21 Jan 2002 01:36:04 +0000 (01:36 +0000)]
cleanups coming from the new functions/macros
braam [Mon, 21 Jan 2002 01:17:17 +0000 (01:17 +0000)]
Fix a broken macro.
braam [Mon, 21 Jan 2002 00:48:30 +0000 (00:48 +0000)]
this minimal patch might actually work.
filter obd won't work: we don't need it now.
braam [Sun, 20 Jan 2002 05:03:56 +0000 (05:03 +0000)]
Small fixes to get lustre_light mount working over the request handling
infrastructure.
braam [Sun, 20 Jan 2002 00:49:49 +0000 (00:49 +0000)]
A few missing files...
braam [Sun, 20 Jan 2002 00:45:19 +0000 (00:45 +0000)]
Small fixes to the request processing.
Split off the metadata client into a separate module, probably easier
to test things that way.
braam [Fri, 18 Jan 2002 06:01:30 +0000 (06:01 +0000)]
Fix small typos in ost/osc
braam [Thu, 3 Jan 2002 18:39:07 +0000 (18:39 +0000)]
omitted test script
braam [Thu, 3 Jan 2002 18:37:25 +0000 (18:37 +0000)]
forgotten two files
braam [Thu, 3 Jan 2002 17:10:42 +0000 (17:10 +0000)]
Small bug fixes. OSC/OST almost working.
braam [Sun, 30 Dec 2001 18:18:33 +0000 (18:18 +0000)]
it _compiles_ finally on 7.1 and 7.2, but the solution is not great.
braam [Sun, 30 Dec 2001 06:43:06 +0000 (06:43 +0000)]
Lustre light client request module
braam [Sun, 30 Dec 2001 06:17:15 +0000 (06:17 +0000)]
Most of the code for the OST target.
lib/obd_pack.c - routines for packing/unpacking of OST requests
lib/mds_pack.c - fixes (should be 64bit safe now)
autogen.sh - no more Makefile.in in CVS
tests/testreq.c tests/umreq.sh tests of the RPC infrastructure
braam [Sat, 29 Dec 2001 00:20:44 +0000 (00:20 +0000)]
- fixes to the MDS: it now answers requests from the request test
program.
- beginning of OST client/server code - needs work.
braam [Fri, 28 Dec 2001 04:41:15 +0000 (04:41 +0000)]
A solid part of the MDS request processing infrastructure.
- packing/unpacking and definition of requests
- a server daemon
- getattr call coded
Lustre idl file created:
- move all interface definitions here
- that's ioctl's, mds requests/replies & obd requests/replies
Makefiles:
- configure.in can handle user mode linux now
utils:
- fixed the obdctl library to support old version of readline.
braam [Mon, 17 Dec 2001 15:00:39 +0000 (15:00 +0000)]
small changes and fixes to get the filter OBD working fully.
It seems to work well under ext2, XFS and Reiser at the moment.
braam [Thu, 13 Dec 2001 22:21:05 +0000 (22:21 +0000)]
- obd filter works over ext2, but bonnie++ is buggie
- obd filter doesn't work over reiser
- obdctl now works and is taking over from obdcontrol
braam [Tue, 11 Dec 2001 21:08:42 +0000 (21:08 +0000)]
Numerous changes:
- new control utility - no Perl
- filter obd halfway coded ; requires new patches to kernel
- big cleanup in the class driver with better packed ioctls
- macros to pack other things, like network packets
braam [Thu, 8 Nov 2001 19:54:43 +0000 (19:54 +0000)]
Two small changes to support large files.
- internally open files with O_LARGEFILE
- s_maxbytesize set to 64G (should do info for that).
braam [Thu, 8 Nov 2001 19:11:49 +0000 (19:11 +0000)]
large file printk cleanups
braam [Thu, 8 Nov 2001 18:56:34 +0000 (18:56 +0000)]
fix minor kmap/kunmap mismatch.
braam [Tue, 6 Nov 2001 19:05:51 +0000 (19:05 +0000)]
Minor compilation fixes for RedHat 2.4.9
Fix reference decreasing bug in namei.c
braam [Tue, 6 Nov 2001 18:42:41 +0000 (18:42 +0000)]
minor fix to the patch
braam [Tue, 6 Nov 2001 04:20:34 +0000 (04:20 +0000)]
created
braam [Mon, 5 Nov 2001 22:20:52 +0000 (22:20 +0000)]
If you free a string ... it can cost a lot of time.
braam [Mon, 5 Nov 2001 07:35:40 +0000 (07:35 +0000)]
many changes: seems ok on 2.4.9
gord-fig [Thu, 25 Oct 2001 16:50:17 +0000 (16:50 +0000)]
Back out size/blocks changes.
gord-fig [Wed, 24 Oct 2001 20:51:25 +0000 (20:51 +0000)]
Segregate block and size counting between obdfs and obdext2.
gord-fig [Wed, 24 Oct 2001 19:38:29 +0000 (19:38 +0000)]
Remove debugging clutter.
braam [Sun, 21 Oct 2001 02:52:05 +0000 (02:52 +0000)]
Another very major cleanup:
- new lookup/new_inode code based on iget4 (saves RPC's)
- reorganized the layout of ext2_obd.c
- the bonnie++ bug can be fixed by patching the 2.4.3 kernel.
gord-fig [Fri, 19 Oct 2001 22:54:38 +0000 (22:54 +0000)]
Again, only use loop device for testing.
braam [Fri, 19 Oct 2001 18:54:07 +0000 (18:54 +0000)]
This fixes a race between killing inodes in obdfs and in ext2obd.
When files are kept open in obdfs it is important not to propagate
the 0 link count to ext2obd since that would delete the inode prematurely.
This one seems to run dbench 50 ok.
braam [Fri, 19 Oct 2001 16:06:28 +0000 (16:06 +0000)]
fairly massive change to remove write_inode methods and switch
to setattr everywhere -- dbench 50 completes, so does bonnie++.
braam [Fri, 19 Oct 2001 05:17:34 +0000 (05:17 +0000)]
fix statfs bug and a truncation issue.
braam [Fri, 19 Oct 2001 04:13:53 +0000 (04:13 +0000)]
fix setattr bug; check in symlink changes
gord-fig [Thu, 18 Oct 2001 23:38:29 +0000 (23:38 +0000)]
Don't use printk unconditionally.
gord-fig [Thu, 18 Oct 2001 22:11:07 +0000 (22:11 +0000)]
Add code to help debug the rmmod hang.
gord-fig [Wed, 17 Oct 2001 22:36:28 +0000 (22:36 +0000)]
Consolidate variables into a structure.
gord-fig [Wed, 17 Oct 2001 17:11:15 +0000 (17:11 +0000)]
Convert signals in pupdated into wait queues.
gord-fig [Wed, 17 Oct 2001 00:28:29 +0000 (00:28 +0000)]
Remove the obdo->o_rdev member, and store rdev numbers in the inline data.
gord-fig [Wed, 17 Oct 2001 00:02:40 +0000 (00:02 +0000)]
Mark potentially obsolete functions.
braam [Tue, 16 Oct 2001 05:27:35 +0000 (05:27 +0000)]
fix for the symlink problem.
braam [Tue, 16 Oct 2001 03:51:52 +0000 (03:51 +0000)]
debugging fixes and small memory leak fix.
braam [Mon, 15 Oct 2001 07:31:34 +0000 (07:31 +0000)]
one more high memory kmap missing.
braam [Mon, 15 Oct 2001 05:51:19 +0000 (05:51 +0000)]
more page cache changes
braam [Mon, 15 Oct 2001 05:33:22 +0000 (05:33 +0000)]
ext2 page cache updates
braam [Sun, 14 Oct 2001 23:50:11 +0000 (23:50 +0000)]
highmemory changes
braam [Sun, 14 Oct 2001 23:49:06 +0000 (23:49 +0000)]
high memory fixes
braam [Fri, 12 Oct 2001 20:27:16 +0000 (20:27 +0000)]
attempted bug fixes for 2.4.9.
gord-fig [Fri, 12 Oct 2001 19:44:57 +0000 (19:44 +0000)]
Update RPM building.
braam [Wed, 10 Oct 2001 18:02:22 +0000 (18:02 +0000)]
- ext2_obd.c --- fix the bugs in read/write for Linux 2.4.3
gord-fig [Mon, 8 Oct 2001 16:53:53 +0000 (16:53 +0000)]
Convert to Automake.
gord-fig [Mon, 1 Oct 2001 17:06:58 +0000 (17:06 +0000)]
Create lustre-tools and lustre-modules packages.
braam [Sat, 29 Sep 2001 19:59:42 +0000 (19:59 +0000)]
Fixes to get things running on 2.4.3.
- iozone runs very well
- copying large trees fails when debugging is enabled
braam [Sat, 29 Sep 2001 18:20:12 +0000 (18:20 +0000)]
add this to prevent locally modified config.sh files to be
checked in. [This avoids accidental reformatting of partitions etc.]
gord-fig [Thu, 27 Sep 2001 23:00:13 +0000 (23:00 +0000)]
Minor build and RPM cleanups.
gord-fig [Thu, 27 Sep 2001 22:25:48 +0000 (22:25 +0000)]
Update copyright and license information.
gord-fig [Wed, 26 Sep 2001 21:13:21 +0000 (21:13 +0000)]
Ensure that obdcontrol is installed.
gord-fig [Wed, 26 Sep 2001 20:54:15 +0000 (20:54 +0000)]
Add an initial RPM spec file.
gord-fig [Wed, 26 Sep 2001 20:52:14 +0000 (20:52 +0000)]
Add scripts/mass_install to simplify installation rules.
gord-fig [Tue, 25 Sep 2001 22:21:14 +0000 (22:21 +0000)]
Preserve timestamps if a patch made no changes.
gord-fig [Tue, 25 Sep 2001 22:19:48 +0000 (22:19 +0000)]
Updates for Debian, devfs, and the device command.
braam [Tue, 25 Sep 2001 06:28:22 +0000 (06:28 +0000)]
add export of do_kern_mount for 2.4.9
braam [Tue, 25 Sep 2001 06:21:18 +0000 (06:21 +0000)]
fix setup method for ext2 obd devices
remove stuff from Makefile that didn't work
gord-fig [Mon, 24 Sep 2001 17:40:19 +0000 (17:40 +0000)]
Remove spurious trailing \0 bytes.
gord-fig [Mon, 24 Sep 2001 17:39:22 +0000 (17:39 +0000)]
Minor interface cleanups.
gord-fig [Mon, 24 Sep 2001 17:34:29 +0000 (17:34 +0000)]
Update <linux/malloc.h> to <linux/slab.h>.
rzahir [Tue, 3 Jul 2001 01:01:24 +0000 (01:01 +0000)]
* obdfs/flushd.c: conditionalized number of C_DEBUG messages.
* include/linux/obd_class.h: added obd_devicename member to
struct obd_device (name is either ptr to dentry or uuid).
* ext2obd/ext2_obd.c: setup() converts dentry into rdev number.
class/class_obd.c: setup() converts name into obd_device dentry
class/obdcontrol: setup() passes /dev/obd name into ioctl
(used to be rdev number and if invalid rdev number was passed
old ext2_obd.c would crash kernel when trying to read superblock).
* class/obdcontrol: added "status, procsys, script, insmod, rmmod,
lsmod, shell and close" commands for obdcontrol. This allows
easier scripting from within obdcontrol. Introduced ability to
maintain multiple open obd devices from a single obdcontrol
session. Device command toggles device context. Obdcontrol
maintains multiple open file handles. "script <file>" command is
useful for "sourcing" scripts without leaving obdcontrol.
shell <command> allows any shell command to be executed from
within obdcontrol.
* class/proc_lustre.c: added support for /proc/lustre/obd/<n>/status.
These are read-only /proc entries that track /dev/obd<n>
internal state.
* obdtrace/* & include/linux/obd_class.h: obd_trace a logical obd
module useful for tracing and performance debug of the Lustre
obd protocol stack. obdtrace module creates
/proc/lustre/obd/<n>/stats file. Reading this /proc file shows
per OBD performance statistics. Any write to this /proc file
resets the counters for this OBD.
* scripts/obdtrace_demo.scr: Example of obdtrace that
takes advantage of new obdcontrol functionality.
* doc/obdtrace_demo.txt: shows obdtrace capabilities.
braam [Tue, 26 Jun 2001 05:33:52 +0000 (05:33 +0000)]
couple of missing files added
braam [Tue, 26 Jun 2001 05:27:40 +0000 (05:27 +0000)]
Change in the make system - also minor edits and fixes for compilation.
braam [Fri, 16 Mar 2001 03:16:07 +0000 (03:16 +0000)]
Now it really works again on 2.4.2! Yippeah. (No loop devices though.)
braam [Sun, 11 Mar 2001 01:20:22 +0000 (01:20 +0000)]
release another lock and now it even unmounts.
braam [Sun, 11 Mar 2001 00:53:49 +0000 (00:53 +0000)]
a working file system!
braam [Thu, 8 Mar 2001 23:51:32 +0000 (23:51 +0000)]
things are starting to work for Linux 2.4.2!!
ext2obd works (except _write and _read which aren't that important).