mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Justin Piszcz <jpiszcz@lucidpixels.com>
To: linux-kernel@vger.kernel.org
Cc: linux-raid@vger.kernel.org, neilb@suse.de
Subject: Re: Kernel 2.6.17 and RAID5 Grow Problem (critical section backup)
Date: Fri, 7 Jul 2006 15:42:09 -0400 (EDT)	[thread overview]
Message-ID: <Pine.LNX.4.64.0607071539020.2643@p34.internal.lan> (raw)
In-Reply-To: <Pine.LNX.4.64.0607071501000.14371@p34.internal.lan>



On Fri, 7 Jul 2006, Justin Piszcz wrote:

>
>
> On Fri, 7 Jul 2006, Justin Piszcz wrote:
>
>> 
>> 
>> On Fri, 7 Jul 2006, Justin Piszcz wrote:
>> 
>>> On Fri, 7 Jul 2006, Justin Piszcz wrote:
>>> 
>>>> On Fri, 7 Jul 2006, Justin Piszcz wrote:
>>>> 
>>>>> p34:~# mdadm /dev/md3 -a /dev/hde1
>>>>> mdadm: added /dev/hde1
>>>>> 
>>>>> p34:~# mdadm -D /dev/md3
>>>>> /dev/md3:
>>>>>        Version : 00.90.03
>>>>>  Creation Time : Fri Jun 30 09:17:12 2006
>>>>>     Raid Level : raid5
>>>>>     Array Size : 1953543680 (1863.04 GiB 2000.43 GB)
>>>>>    Device Size : 390708736 (372.61 GiB 400.09 GB)
>>>>>   Raid Devices : 6
>>>>>  Total Devices : 7
>>>>> Preferred Minor : 3
>>>>>    Persistence : Superblock is persistent
>>>>>
>>>>>    Update Time : Fri Jul  7 08:25:44 2006
>>>>>          State : clean
>>>>> Active Devices : 6
>>>>> Working Devices : 7
>>>>> Failed Devices : 0
>>>>>  Spare Devices : 1
>>>>>
>>>>>         Layout : left-symmetric
>>>>>     Chunk Size : 512K
>>>>>
>>>>>           UUID : e76e403c:7811eb65:73be2f3b:0c2fc2ce
>>>>>         Events : 0.232940
>>>>>
>>>>>    Number   Major   Minor   RaidDevice State
>>>>>       0      22        1        0      active sync   /dev/hdc1
>>>>>       1      56        1        1      active sync   /dev/hdi1
>>>>>       2       3        1        2      active sync   /dev/hda1
>>>>>       3       8       49        3      active sync   /dev/sdd1
>>>>>       4      88        1        4      active sync   /dev/hdm1
>>>>>       5       8       33        5      active sync   /dev/sdc1
>>>>>
>>>>>       6      33        1        -      spare   /dev/hde1
>>>>> p34:~# mdadm --grow /dev/md3 --raid-disks=7
>>>>> mdadm: Need to backup 15360K of critical section..
>>>>> mdadm: Cannot set device size/shape for /dev/md3: No space left on 
>>>>> device
>>>>> p34:~# mdadm --grow /dev/md3 --bitmap=internal --raid-disks=7
>>>>> mdadm: can change at most one of size, raiddisks, bitmap, and layout
>>>>> p34:~# umount /dev/md3
>>>>> p34:~# mdadm --grow /dev/md3 --raid-disks=7
>>>>> mdadm: Need to backup 15360K of critical section..
>>>>> mdadm: Cannot set device size/shape for /dev/md3: No space left on 
>>>>> device
>>>>> p34:~#
>>>>> 
>>>>> The disk only has about 350GB of 1.8TB used, any idea why I get this 
>>>>> error?
>>>>> 
>>>>> I searched google but could not find anything on this issue when trying 
>>>>> to grow the array?
>>>>> 
>>>>> 
>>>>> -
>>>>> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
>>>>> the body of a message to majordomo@vger.kernel.org
>>>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>>>> 
>>>> 
>>>> Is it because I use a 512kb chunksize?
>>>> 
>>>> Jul  7 08:44:59 p34 kernel: [4295845.933000] raid5: reshape: not enough 
>>>> stripes.  Needed 512
>>>> Jul  7 08:44:59 p34 kernel: [4295845.962000] md: couldn't update array 
>>>> info. -28
>>>> 
>>>> So the RAID5 reshape only works if you use a 128kb or smaller chunk size?
>>>> 
>>>> Justin.
>>>> -
>>>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" 
>>>> in
>>>> the body of a message to majordomo@vger.kernel.org
>>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>>> Please read the FAQ at  http://www.tux.org/lkml/
>>>> 
>>> 
>>>> From the source:
>>> 
>>> /* Can only proceed if there are plenty of stripe_heads.
>>> @@ -2599,30 +2593,48 @@ static int raid5_reshape(mddev_t *mddev,
>>> * If the chunk size is greater, user-space should request more
>>> * stripe_heads first.
>>> */
>>> - if ((mddev->chunk_size / STRIPE_SIZE) * 4 > conf->max_nr_stripes) {
>>> + if ((mddev->chunk_size / STRIPE_SIZE) * 4 > conf->max_nr_stripes ||
>>> + (mddev->new_chunk / STRIPE_SIZE) * 4 > conf->max_nr_stripes) {
>>> printk(KERN_WARNING "raid5: reshape: not enough stripes. Needed %lu\n",
>>> (mddev->chunk_size / STRIPE_SIZE)*4);
>>> return -ENOSPC;
>>> }
>>> 
>>> I don't see anything that mentions one needs to use a certain chunk size?
>>> 
>>> Any idea what the problem is here?
>>> 
>>> Justin.
>>> -
>>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>>> the body of a message to majordomo@vger.kernel.org
>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>> Please read the FAQ at  http://www.tux.org/lkml/
>>> 
>> 
>> Neil,
>> 
>> Any comments?
>> 
>> Justin.
>> 
>
> The --grow option worked, sort of.
>
> p34:~# mdadm /dev/md3 --grow --size=max
> p34:~# umount /dev/md3
> p34:~# mdadm -S /dev/md3
> p34:~# mount /dev/md3
> Segmentation fault
> p34:~#
>
> [4313355.425000] BUG: unable to handle kernel NULL pointer dereference at 
> virtual address 000000d4
> [4313355.425000]  printing eip:
> [4313355.425000] c03c377b
> [4313355.425000] *pde = 00000000
> [4313355.425000] Oops: 0002 [#1]
> [4313355.425000] PREEMPT SMP
> [4313355.425000] CPU:    0
> [4313355.425000] EIP:    0060:[<c03c377b>]    Not tainted VLI
> [4313355.425000] EFLAGS: 00010046   (2.6.17.3 #4)
> [4313355.425000] EIP is at _spin_lock_irqsave+0x14/0x61
> [4313355.425000] eax: 00000000   ebx: f7e6c000   ecx: c0333d12   edx: 
> 00000202
> [4313355.425000] esi: 000000d4   edi: f7fb9600   ebp: 000000d4   esp: 
> f7e6dc94
> [4313355.425000] ds: 007b   es: 007b   ss: 0068
> [4313355.425000] Process mount (pid: 22892, threadinfo=f7e6c000 
> task=c1a90580)
> [4313355.425000] Stack: c19947e4 00000000 c0333d32 00000002 c012aaa2 f7e6dccc 
> f7e6dc9c f7e6dc9c
> [4313355.425000]        f7e6dccc c0266b8d c19947e4 00000000 00000000 e11a61f8 
> f7e6dccc f7e6dccc
> [4313355.425000]        00000005 f7fda014 f7fda000 f7fe8c00 c0259a79 e11a61c0 
> 00000001 0000001f
> [4313355.425000] Call Trace:
> [4313355.425000]  <c0333d32> raid5_unplug_device+0x20/0x65  <c012aaa2> 
> flush_workqueue+0x67/0x87
> [4313355.425000]  <c0266b8d> xfs_flush_buftarg+0x1ab/0x1c1  <c0259a79> 
> xfs_mount+0x322/0xbb5
> [4313355.425000]  <c013e3f2> truncate_inode_pages+0x2f/0x33  <c015c3e5> 
> set_blocksize+0x83/0x91
> [4313355.425000]  <c026d804> xfs_fs_fill_super+0x94/0x232  <c02825b3> 
> snprintf+0x2b/0x2f
> [4313355.425000]  <c0189c8e> disk_name+0xa9/0xb3  <c015c412> 
> sb_set_blocksize+0x1f/0x46
> [4313355.425000]  <c015b5ff> get_sb_bdev+0x100/0x13f  <c016f104> 
> alloc_vfsmnt+0xab/0xd4
> [4313355.425000]  <c026ce9e> xfs_fs_get_sb+0x2f/0x33  <c026d770> 
> xfs_fs_fill_super+0x0/0x232
> [4313355.425000]  <c015abc4> do_kern_mount+0x49/0xc0  <c016ffc5> 
> do_mount+0x2c7/0x6e6
> [4313355.425000]  <c014372e> __handle_mm_fault+0x1fb/0x8a2  <c01439c2> 
> __handle_mm_fault+0x48f/0x8a2
> [4313355.425000]  <c013b6f5> __alloc_pages+0x53/0x2f1  <c013bbd2> 
> __get_free_pages+0x2d/0x4b
> [4313355.425000]  <c016ede0> copy_mount_options+0x2c/0x12e  <c0170481> 
> sys_mount+0x9d/0xde
> [4313355.425000]  <c0102df3> syscall_call+0x7/0xb
> [4313355.425000] Code: 85 c0 74 c3 f3 90 0f b6 06 84 c0 7e f0 eb b8 90 e8 60 
> f2 ff ff eb d1 56 53 89 c6 bb 00 e0 ff ff 21 e3 83 43 14 01 9c 5a fa 31 c0 
> <86> 06 84 c0 7e 0c c7 46 04 00 00 00 00 89 d0 5b 5e c3 52 9d 83
> [4313355.425000] EIP: [<c03c377b>] _spin_lock_irqsave+0x14/0x61 SS:ESP 
> 0068:f7e6dc94
> [4313355.425000]  <6>note: mount[22892] exited with preempt_count 1
>
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
>

Deleting the old raid5 (had data backed up before I tried this), oh, and 
incase you are wondering, I rebooted and everything was fine, but I think 
the 512kb chunksize is my problem.  So I am deleting this array and then I 
am going to create the smallest raid5 possibly with 3 drives and then try 
to grow again.




  reply	other threads:[~2006-07-07 19:42 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-07-07 12:38 Justin Piszcz
2006-07-07 12:46 ` Justin Piszcz
2006-07-07 12:49   ` Justin Piszcz
2006-07-07 14:37     ` Justin Piszcz
2006-07-07 19:04       ` Justin Piszcz
2006-07-07 19:42         ` Justin Piszcz [this message]
2006-07-07 22:00       ` Neil Brown
2006-07-07 22:15         ` Justin Piszcz
2006-07-07 22:31           ` Neil Brown
2006-07-07 22:35             ` Justin Piszcz
2006-07-07 22:38               ` Neil Brown
2006-07-07 22:39                 ` Justin Piszcz
2006-07-10 21:47         ` Justin Piszcz
2006-07-10 22:27           ` Jan Engelhardt
2006-07-10 22:30             ` Justin Piszcz
2006-07-11  7:52               ` Jan Engelhardt
2006-07-11  9:05                 ` Petr Vyskocil
2006-07-18  0:16                   ` Neil Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.4.64.0607071539020.2643@p34.internal.lan \
    --to=jpiszcz@lucidpixels.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-raid@vger.kernel.org \
    --cc=neilb@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®