An error occurred fetching the project authors.
- 20 Oct, 2004 1 commit
-
-
Neil Brown authored
While %Lu works with gcc, %llu is the correct usage. Signed-off-by:
Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 19 Oct, 2004 1 commit
-
-
Maximilian Attems authored
Signed-off-by:
Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by:
Maximilian Attems <janitor@sternwelten.at> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 14 Sep, 2004 1 commit
-
-
Christoph Hellwig authored
Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 27 Aug, 2004 1 commit
-
-
Neil Brown authored
md currently uses csum_partial to calculate checksums for superblocks. However this function is not consistent across all architectures. Some (i386) to a 32bit csum. Some (alpha) do a 16 bit csum. This makes it hard for userspace to keep up. So we provide a generic routine (that does exactly what the i386 csum_partial does) and: - When setting the csum, use csum_partial so that old kernels will still recognise the superblock - When checking the csum, allow either csum_partial or the new generic code to provide the right csum. This allows user-space to just use the common code and always work. Also modify the csum for version-1 superblock (which currently aren't being used) to always user a predictable checksum algorithm. Thanks to Mike Tran <mhtran@us.ibm.com> for noticing this. Signed-off-by:
Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 24 Aug, 2004 3 commits
-
-
Neil Brown authored
__bdevname now only prints major/minor number which isn't much help. So remove most calls to it from md.c, replacing those that are useful by calls to bdevname (often printing the message when the error is first detected rather than higher up the call tree). Also discard hot_generate_error which doesn't do anything useful and never has. Signed-off-by:
Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Neil Brown authored
1/ Introduce "mddev->resync_max_sectors" so that an md personality can ask for resync to cover a different address range than that of a single drive. raid10 will use this. 2/ fix is_mddev_idle so that if there seem to be a negative number of events, it doesn't immediately assume activity. 3/ make "sync_io" (the count of IO sectors used for array resync) an atomic_t to avoid SMP races. 4/ Pass md_sync_acct a "block_device" rather than the containing "rdev", as the whole rdev isn't needed. Also make this an inline function. 5/ Make sure recovery gets interrupted on any error. Signed-off-by:
Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Andi Kleen authored
Prevents some noise during boot up when no MD volumes are found. I think I picked it up from someone else, but I cannot remember from whom (sorry) Cc: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 23 Aug, 2004 1 commit
-
-
Jens Axboe authored
md bits Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 05 Jun, 2004 5 commits
-
-
Neil Brown authored
This allows the number of "raid_disks" in a raid1 to be changed. This requires allocating a new pool of "r1bio" structures which a different number of bios, suspending IO, and swapping the new pool in place of the old. (and a few other related changes). Signed-off-by:
Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Neil Brown authored
It is possible to have raid1/4/5/6 arrays that do not use all the space on the drive. This can be done explicitly, or can happen info you, one by one, replace all the drives with larger devices. This patch extends the "SET_ARRAY_INFO" ioctl (which previously invalid on active arrays) allow some attributes of the array to be changed and implements changing of the "size" attribute. "size" is the amount of each device that is actually used. If "size" is increased, the new space will immediately be "resynced". Signed-off-by:
Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Neil Brown authored
If raid1 decides it needs to resync it will do so even if there is only one working device. This is pointless. With this patch we abort resync if there is nowhere to write to. Signed-off-by:
Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Neil Brown authored
If the superblock isn't persistent, we shouldn't allow room for it. From: Paul Clements <Paul.Clements@SteelEye.com> Signed-off-by:
Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Neil Brown authored
This isn't really needed at the moment, but it is more consistant with the interface and may be needed later. Signed-off-by:
Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 03 Jun, 2004 1 commit
-
-
Alexander Viro authored
-
- 01 Jun, 2004 1 commit
-
-
Andrew Morton authored
From: Ingo Molnar <mingo@elte.hu> the patch below gets rid of a message that gets printed during FC2's quiet bootup. Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
- 19 Apr, 2004 1 commit
-
-
Andrew Morton authored
From: Nigel Cunningham <ncunningham@users.sourceforge.net> A few weeks ago, Pavel and I agreed that PF_IOTHREAD should be renamed to PF_NOFREEZE. This reflects the fact that some threads so marked aren't actually used for IO while suspending, but simply shouldn't be frozen. This patch, against 2.6.5 vanilla, applies that change. In the refrigerator calls, the actual value doesn't matter (so long as it's non-zero) and it makes more sense to use PF_FREEZE so I've used that.
-
- 12 Apr, 2004 2 commits
-
-
Andrew Morton authored
From: Neil Brown <neilb@cse.unsw.edu.au> I've made a bunch of changes to the 'md' bits - largely moving the unplugging into the individual personalities which know more about which drives are actually in use.
-
Andrew Morton authored
From: Jens Axboe <axboe@suse.de>, Chris Mason, me, others. The global unplug list causes horrid spinlock contention on many-disk many-CPU setups - throughput is worse than halved. The other problem with the global unplugging is of course that it will cause the unplugging of queues which are unrelated to the I/O upon which the caller is about to wait. So what we do to solve these problems is to remove the global unplug and set up the infrastructure under which the VFS can tell the block layer to unplug only those queues which are relevant to the page or buffer_head whcih is about to be waited upon. We do this via the very appropriate address_space->backing_dev_info structure. Most of the complexity is in devicemapper, MD and swapper_space, because for these backing devices, multiple queues may need to be unplugged to complete a page/buffer I/O. In each case we ensure that data structures are in place to permit us to identify all the lower-level queues which contribute to the higher-level backing_dev_info. Each contributing queue is told to unplug in response to a higher-level unplug. To simplify things in various places we also introduce the concept of a "synchronous BIO": it is tagged with BIO_RW_SYNC. The block layer will perform an immediate unplug when it sees one of these go past.
-
- 29 Mar, 2004 1 commit
-
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> This helps raid5 work on at least 1 very large array.. Thanks to Evan Felix <evan.felix@pnl.gov>
-
- 13 Mar, 2004 1 commit
-
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> kernel parameters: raid=partitionable will make all auto-detected md arrays partitionable md=d.... will assemble an array as a partitionable array.
-
- 26 Feb, 2004 1 commit
-
-
Andrew Morton authored
From: Dave Jones <davej@redhat.com> Now that the syscalls.h stuff is in mainline, that clears the way for this I guess?
-
- 18 Feb, 2004 3 commits
-
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> With this patch, md used two major numbers for arrays. One Major is number 9 with name 'md' have unpartitioned md arrays, one per minor number. The other Major is allocated dynamically with name 'mdp' and had on array for every 64 minors, allowing for upto 63 partitions. The arrays under one major are completely separate from the arrays under the other. The preferred name for devices with the new major are of the form: /dev/md/d1p3 # partion 3 of device 1 - minor 67 When a paritioned md device is assembled, the partitions are not recognised until after the whole-array device is opened again. A future version of mdadm will perform this open so that the need will be transparent.
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> The "START_ARRAY" ioctl depends on major/minor numbers (as stored in the raid superblock) are stable over reboots, which is increasingly untrue. There are better ways to start an array (e.g. with mdadm) so we mark the ioctl as deprecated for 2.6, and will remove it in 2.7.
-
Andrew Morton authored
These no longer do anything. This patch changes modules API. It was acked by Arjan@RH and Hubert@Suse.
-
- 04 Feb, 2004 3 commits
-
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> Instead of using ("md%d", mdidx(mddev)), we now use ("%s", mdname(mddev)) where mdname is the disk_name field in the associated gendisk structure. This allows future flexability in naming.
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> This patch thanks to Paul Clements <Paul.Clements@SteelEye.com> and only has effect if md is compiled with #define DEBUG 1
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> A RAID superblock can indicate which minor number the array should be assembled under. As this is only meaningful when doing auto-start, we move the test for it being in the valid range to the place where auto-start happens. When an array is started any other way, it doesn't matter what value is here.
-
- 23 Jan, 2004 1 commit
-
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> If a raid array was syncing on shutdown, it would hang on shutdown, constantly re-entering md_enter_safemade. This fixes it.
-
- 20 Jan, 2004 11 commits
-
-
Andrew Morton authored
From: "Randy.Dunlap" <rddunlap@osdl.org> From: Luiz Fernando Capitulino <lcapitulino@prefeitura.sp.gov.br> This #ifdef/#endif is not necessary.
-
Andrew Morton authored
From: "Randy.Dunlap" <rddunlap@osdl.org> From: Luiz Fernando Capitulino <lcapitulino@prefeitura.sp.gov.br> It fixes these warnings when !CONFIG_PROC_FS: drivers/md/md.c: In function `md_geninit': drivers/md/md.c:3481: warning: unused variable `p' drivers/md/md.c: At top level: drivers/md/md.c:3007: warning: `md_seq_fops' defined but not used
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> ..to access 'mddev' from the inode pointer. This is already set up for us.
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> We only need it occasionally to map unit number to mddev, and we can use a linear search for that. This reduces dependance on MAX_MD_DEVS
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> Move the pointers into mddev. The reduces dependance on MAX_MD_DEVS.
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> Currently a raid0 superblock is only written when the array is stopped, so a crash between creation and stop can lose your data. This patch marks a superblock 'dirty' at creation and forces a dirty superblock to be written when the array is started. Previously we would prod the per-array thread at this point, but as it avoids certain chores when the array is locked, and the array is locked at this point, that isn't guaranteed to do the right thing. Instead we prod the thread whenever the array is unlocked. Finally, only write the superblock at array stop if it is needed to mark the array as 'clean'. raid0 which is never dirty, doesn't need this.
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> Current code calls do_md_stop to clean up if do_md_run fails, but this is a/ not needed as do_md_run cleans up itself b/ bad as it could try to clean up after an -EBUSY error !!!
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> Currently if there are two failed drives, and two spares are added, then recovery starts onto the first spare, but never notices the second spare. To cope, we set RECOVERY_NEEDED when recovery finishes so that we re-check.
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> If the raid1 or raid5 thread gets to run md_check_recovery after the recovery thread has been interupted, but before do_md_stop completes, a spare drive can be incorporated into an array befure it is up-to-date. This patch corrects the relevant test.
-
Andrew Morton authored
From: NeilBrown <neilb@cse.unsw.edu.au> Following are 10 patches for md in 2.6.1-lastest. 1-6 are simple bugfixes that I am confident should be in 2.6.2. 7 is a bugfix that is fairly important, but could probably do with a bit more testing first. It is not impossible that it could deadlock, though I think I have caught and fixed all the problems. 8-10 are code simplication. So maybe 7-10 should only go in -mm for now, but if it is a while before 2.6.2, then maybe they can go in a 2.6.2-pre. From: Mike Tran <mhtran@us.ibm.com> If cannot find the device, return error (ENODEV) Otherwise, return success (0)
-
Andrew Morton authored
From: "H. Peter Anvin" <hpa@zytor.com> RAID6 implementation. See Kconfig help for usage details. The next release of `mdadm' has raid6 userspace support.
-
- 25 Sep, 2003 1 commit
-
-
Neil Brown authored
Previously, we called blk_queue_make_request(q,mddev->pers->make_request) *before* calling mddev->pers->run(), but this left a hole in which the device could be accessed before it was initialised. So we moved blk_queue_make_request to *after* ->pers->run(), but now some of the initialisation done in ->run is over-written by blk_queue_make_request(), particularly limits like ->max_sectors. So now, we just open-code the one line of blk_queue_make_request that we need at this point. All the rest has been done by a separate called to blk_queue_make_request, either when the mddev was first allocated, or when a previous incarnation of the device was stopped. This fixes "bio too big" error that occured due to max_sectors being too large.
-