- 14 Mar, 2003 18 commits
-
-
Neil Brown authored
Now that we have working up-calls to userspace, CROSSMNT makes sense. If CROSSMNT is set for an export, and we too a LOOKUP which crosses a mountpoint, we initiate an upcall to find out if and how that filesystem is exported.
-
Neil Brown authored
becase nohide is the user-space visible name for the flag, and we are about to define a real CROSSMNT.
-
Neil Brown authored
1/ call cache_fresh when replacing a cache entry (instead of only when updating) so that up-calls waiting on the replaced entry continue. 2/ in svcauth_unix_accept, don't put the verifier until all tests have succeeded. 3/ calculate size of request-being-deferred correctly.
-
Neil Brown authored
nlmsvc_lock calls nlmsvc_create_block with file->f_sema held. nlmsvc_create_block calls nlmclnt_lookup_host which might call nlm_gc_hosts which might, eventually, try to claim file->f_sema for the same file -> deadlock. nlmsvc_create_block does not need any protection under any lock as lockd is single-threaded and _create_block only plays with internal data structures. So we release the f_sema before calling in, and make sure it gets claimed again afterwards.
-
Neil Brown authored
From: Trond Myklebust <trond.myklebust@fys.uio.no> knfsd needs to disable soft interrupts when calling csum_partial_copy_to_xdr(). At the moment there's a nasty conflict between the RPC server and client. The problem arises when you get to xdr_partial_copy_from_skb() (and the kmap_atomic()); the RPC client can end up calling the same function from a ->data_ready() soft interrupt, and corrupt any data the knfsd process may have copied.
-
Neil Brown authored
-
Neil Brown authored
Superblock format '1' resolves a number of issues with superblock format '0'. It is more dense and can support many more sub-devices. It does not contains un-needed redundancy. It adds a few new useful fields
-
Neil Brown authored
The code to understand a specific superblock format is already highly localised in md. This patch defines a user-space interface for selecting which superblock format to use, and obeys that selection. Md currently has a concept of 3 version numbers: A major version number A minor version number A patch version number There historically seems to be some confusion about whether these refer to a version of the superblock layout, or a version of the software. We will now define that: the "major_version" defines the superblock handler. '0' is the current superblock format. All new formats will need new numbers. the "minor_version" can specify minor variations in the superblock, such as different location on the device the "patch_version" will be used to indicate new extenstions to the software.. patch_version=1 will mean multiple superblock support. A superblock version number is selected by specifing major_version in SET_ARRAY_INFO ioctl. This patch: Updates Documentation/md.txt with details of new interface. Generalises desc_nr handling and makes sure that an array never has two devices with the same desc_nr. makes sure mddev->major_version is always valid and is 0 by default. uses mddev->major_version to select superblock handlers. Modifies set_array_info to just record version number if raid_disks==0 Makes sure max_disks is always set correctly. Determines device size when reading superblock, or a hot-add/add-new.
-
Neil Brown authored
Normally the data stored on a component of a RAID array is stored from the start of the device. This patch allows a per-device data_offset so the data can start elsewhere. This will allow RAID arrays where the metadata is at the head of the device rather than the tail.
-
Neil Brown authored
Md devices (raid1/raid5) can resync or recover. There are similar but importantly different. resync happens after an unclean shutdown recovery happens when a failed drive is being replaced by a hot spare. The sync-checkpoint code confused the two somewhat and this causes problems. This patch makes sure "recovery_cp" only relates to resync, not recovery. It also fixes a small problem with recording spares in the superblock.
-
Neil Brown authored
From: Angus Sawyer <angus.sawyer@dsl.pipex.com> If there are no writes for 20 milliseconds, write out superblock to mark array as clean. Write out superblock with dirty flag before allowing any further write to succeed. If an md thread gets signaled with SIGKILL, reduce the delay to 0. Also tidy up some printk's and make sure writing the superblock isn't noisy.
-
Neil Brown authored
The md_recoveryd thread is responsible for initiating and cleaning up resync threads. This job can be equally well done by the per-array threads for those arrays which might need it. So the mdrecoveryd thread is gone and the core code that it ran is now run by raid5d, raid1d or multipathd. We add an MD_RECOVERY_NEEDED flag so those daemon don't have to bother trying to lock the md array unless it is likely that something needs to be done. Also modify the names of all threads to have the number of md device.
-
Neil Brown authored
It is needed for kernel_fpu_*
-
Neil Brown authored
Md uses ->recovery_running and ->recovery_err to keep track of the status or recovery. This is rather ad hoc and race prone. This patch changes it to ->recovery which has bit flags for various states.
-
Neil Brown authored
It is (now) too trivial to even have an inline.
-
Neil Brown authored
From: Art Haas <ahaas@airmail.net> This patch converts the file to use C99 initializers.
-
Neil Brown authored
From: Angus Sawyer <angus.sawyer@dsl.pipex.com> Mainly straightforward convert of sprintf -> seq_printf. seq_start and seq_next modelled on /proc/partitions. locking/ref counting as for ITERATE_MDDEV. pos == 0 -> header pos == n -> nth mddev pos == 0x10000 -> tail
-
Neil Brown authored
Whenever a ITERATE_MDDEV loop is exitted abnormally we need to mddev_put the current mddev. There was one point in md_do_sync where we didn't so use counts became wrong.
-
- 13 Mar, 2003 1 commit
-
-
Jens Axboe authored
-
- 12 Mar, 2003 1 commit
-
-
Linus Torvalds authored
set. A few versions of gcc-2.96 generate seriously incorrect code.
-
- 11 Mar, 2003 20 commits
-
-
Gerd Knorr authored
This patch creates a new include directory include/media, populates it with a few files header files and fixups the affected drivers to compile with the new directory layout. The directory is intented to be used for (kernel-internal) header files of the media drivers (which are sitting below drivers/media). For now the video-buf.h (mm helper), tuner.h (tv/radio tuner) and audiochip.h (tv sound decoder drivers) header files are moved. Some more header files from the dvb folks will likely follow.
-
Gerd Knorr authored
This patch deletes the MIN/MAX macros from audiochip.h and fixes all users of these macros to use the kernels min/max macros instead.
-
Andrew Morton authored
Patch from Neil Brown <neilb@cse.unsw.edu.au> Allow auto-unplugging to work for devices that do it themselves. Auto-unplugging - and blk_unplug_work in particular - assumes that the device uses "generic_unplug_device" for unplugging, but some devices don't. md crashes. So blk_unplug_work should use ->unplug_fn
-
Steven Cole authored
This patch fixes spelling errors in the Documentation directory and was extensively reviewed by the following people: Dan Kegel, David Woodhouse, Joe Perches, Jared Daniel J. Smith, Michael Hayes, and Steven Cole
-
bk://kernel.bkbits.net/davem/net-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
bk://kernel.bkbits.net/davem/sparc-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Joshua Uziel authored
-
Joshua Uziel authored
-
David S. Miller authored
into kernel.bkbits.net:/home/davem/net-2.5
-
Art Haas authored
-
Stephen Rothwell authored
-
David S. Miller authored
into nuts.ninka.net:/home/davem/src/BK/net-2.5
-
bk://ldm.bkbits.net/linux-2.5-coreLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Patrick Mochel authored
From Ben Collins Used as manual trigger for device/driver binding, so drivers can claim devices that are present but failed to be bound. In case of ieee1394, this can happen if two computers are attached to a device - the second one won't be able to claim it until the first detaches. Changed device_attach() to return 1 when a driver was bound to a device. Makes it so bus_rescan_devices() can return the number of devices attached. Tested this with ieee1394 over a bus reset and it worked as expected.
-
Patrick Mochel authored
- Don't d_delete() files when removing a directory - they must still be hashed when dput() reaps them, and it will __d_drop() them anyway. - Don't d_invalidate() the directory on removal. - do simple_rmdir() after d_delete() on directory. - Remove extra dput(), which was causing refcount to go negative, causing an oops when someone tried to create the directory again. - Make sure we don't d_delete() or do extra dput() on file when updating, either.
-
Andries E. Brouwer authored
-
Dave Kleikamp authored
into shaggy.austin.ibm.com:/shaggy/bk/jfs-2.5
-
Christoph Hellwig authored
The old adap_lock and driver_lock could deadlock and there was a bunch of stuff that was horribly racy. The new locking scheme is from lm_sensors CVS but I had to fix quite a few bugs to make this work.
-
Christoph Hellwig authored
This one is from lm_sensors CVS and mostly cosmetic changes. I it up a bit to compile properly under latest 2.5.
-
Christoph Hellwig authored
another bunch of IDs appeared in lm_sensors CVS lately..
-