[Linux-cluster] gfs2_grow does not work

Abhijith Das adas at redhat.com
Tue Jan 5 05:26:15 UTC 2010


Hi Diamond,

Could I also have the kernel and gfs2-utils rpm versions you are using so I can try this on my setup? I just spotted something in your strace output that could be a problem if you have a newer kernel, but not a newer gfs2-utils package.

The mount syscall in your strace output takes the device as the first arg to mount the metafs. A recent kernel patch from https://bugzilla.redhat.com/show_bug.cgi?id=457798 changed that to take the mountpoint as the first arg instead. There was a corresponding userland patch to gfs2-utils in https://bugzilla.redhat.com/show_bug.cgi?id=459630#c3 that fixed this mismatch.
I'm not sure if you're seeing this. If so, an upgrade of these packages should fix what you're seeing.

Cheers!
--Abhi

----- "Diamond Li" <diamondiona at gmail.com> wrote:

> From: "Diamond Li" <diamondiona at gmail.com>
> To: "linux clustering" <linux-cluster at redhat.com>
> Sent: Monday, January 4, 2010 8:12:12 PM GMT -06:00 US/Canada Central
> Subject: Re: [Linux-cluster] gfs2_grow does not work
>
> [root at wplccdlvm445 proc]# df -k
> Filesystem           1K-blocks      Used Available Use% Mounted on
> /dev/mapper/VolGroup00-LogVol00
>                       28376956   9144384  17767844  34% /
> /dev/sda1               101086     12055     83812  13% /boot
> tmpfs                  1037748         0   1037748   0% /dev/shm
> /dev/mapper/vg100-lvol0
>                         819024    794264     24760  97% /gfs
> 
> [root at wplccdlvm445 proc]# ls -ld /tmp
> drwxrwxrwt 8 root root 4096 Jan  5 04:02 /tmp
> [root at wplccdlvm445 proc]# ls -ld /tmp/.gfs2meta/
> drwx------ 2 root root 4096 Dec 31 14:24 /tmp/.gfs2meta/
> 
> 
> [root at wplccdlvm445 proc]# cat /proc/mounts
> rootfs / rootfs rw 0 0
> /dev/root / ext3 rw,data=ordered 0 0
> /dev /dev tmpfs rw 0 0
> /proc /proc proc rw 0 0
> /sys /sys sysfs rw 0 0
> /proc/bus/usb /proc/bus/usb usbfs rw 0 0
> devpts /dev/pts devpts rw 0 0
> /dev/sda1 /boot ext3 rw,data=ordered 0 0
> tmpfs /dev/shm tmpfs rw 0 0
> none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0
> sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0
> /etc/auto.misc /misc autofs
> rw,fd=7,pgrp=2200,timeout=300,minproto=5,maxproto=5,indirect 0 0
> -hosts /net autofs
> rw,fd=13,pgrp=2200,timeout=300,minproto=5,maxproto=5,indirect 0 0
> none /sys/kernel/config configfs rw 0 0
> /dev/mapper/vg100-lvol0 /gfs gfs2 rw,hostdata=jid=0:id=65537:first=1 0
> 0
> 
> [root at wplccdlvm445 proc]# cat /etc/mtab
> /dev/mapper/VolGroup00-LogVol00 / ext3 rw 0 0
> proc /proc proc rw 0 0
> sysfs /sys sysfs rw 0 0
> devpts /dev/pts devpts rw,gid=5,mode=620 0 0
> /dev/sda1 /boot ext3 rw 0 0
> tmpfs /dev/shm tmpfs rw 0 0
> none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0
> sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0
> none /sys/kernel/config configfs rw 0 0
> /dev/mapper/vg100-lvol0 /gfs gfs2 rw,hostdata=jid=0:id=65537:first=1 0
> 0
> 
> 
> [root at wplccdlvm445 proc]# strace gfs2_grow -v /gfs
> execve("/sbin/gfs2_grow", ["gfs2_grow", "-v", "/gfs"], [/* 29 vars
> */]) = 0
> brk(0)                                  = 0x942d000
> access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or
> directory)
> open("/etc/ld.so.cache", O_RDONLY)      = 3
> fstat64(3, {st_mode=S_IFREG|0644, st_size=90296, ...}) = 0
> mmap2(NULL, 90296, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f96000
> close(3)                                = 0
> open("/lib/libvolume_id.so.0", O_RDONLY) = 3
> read(3,
> "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360 at k\0004\0\0\0"...,
> 512) = 512
> fstat64(3, {st_mode=S_IFREG|0755, st_size=32144, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1,
> 0) = 0xb7f95000
> mmap2(0x6b3000, 33540, PROT_READ|PROT_EXEC,
> MAP_PRIVATE|MAP_DENYWRITE,
> 3, 0) = 0x6b3000
> mmap2(0x6bb000, 4096, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7) = 0x6bb000
> close(3)                                = 0
> open("/lib/libc.so.6", O_RDONLY)        = 3
> read(3,
> "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\17X\0004\0\0\0"...,
> 512) = 512
> fstat64(3, {st_mode=S_IFREG|0755, st_size=1611564, ...}) = 0
> mmap2(0x56b000, 1332676, PROT_READ|PROT_EXEC,
> MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x56b000
> mprotect(0x6aa000, 4096, PROT_NONE)     = 0
> mmap2(0x6ab000, 12288, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13f) = 0x6ab000
> mmap2(0x6ae000, 9668, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x6ae000
> close(3)                                = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1,
> 0) = 0xb7f94000
> set_thread_area({entry_number:-1 -> 6, base_addr:0xb7f946c0,
> limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
> limit_in_pages:1, seg_not_present:0, useable:1}) = 0
> mprotect(0x6ab000, 8192, PROT_READ)     = 0
> mprotect(0x567000, 4096, PROT_READ)     = 0
> munmap(0xb7f96000, 90296)               = 0
> time(NULL)                              = 1262655667
> getpid()                                = 18781
> brk(0)                                  = 0x942d000
> brk(0x944e000)                          = 0x944e000
> open("/gfs", O_RDONLY|O_LARGEFILE)      = 3
> open("/proc/mounts", O_RDONLY|O_LARGEFILE) = 4
> lstat64("/gfs", {st_mode=S_IFDIR|0755, st_size=3864, ...}) = 0
> fstat64(4, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1,
> 0) = 0xb7fac000
> read(4, "rootfs / rootfs rw 0 0\n/dev/root"..., 4096) = 659
> close(4)                                = 0
> munmap(0xb7fac000, 4096)                = 0
> open("/dev/mapper/vg100-lvol0", O_RDWR|O_LARGEFILE) = 4
> fstat64(4, {st_mode=S_IFBLK|0660, st_rdev=makedev(253, 4), ...}) = 0
> _llseek(4, 0, [1677721600], SEEK_END)   = 0
> fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1,
> 0) = 0xb7fac000
> write(1, "Initializing lists...\n", 22Initializing lists...
> ) = 22
> _llseek(4, 65536, [65536], SEEK_SET)    = 0
> read(4,
> "\1\26\31p\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0d\0\0\0\0\0\0\7\t\0\0\7l"...,
> 4096) = 4096
> _llseek(4, 0, [1677721600], SEEK_END)   = 0
> open("/proc/mounts", O_RDONLY|O_LARGEFILE) = 5
> fstat64(5, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
> -1,
> 0) = 0xb7fab000
> read(5, "rootfs / rootfs rw 0 0\n/dev/root"..., 4096) = 659
> read(5, "", 4096)                       = 0
> close(5)                                = 0
> munmap(0xb7fab000, 4096)                = 0
> open("/tmp/.gfs2meta", O_RDONLY|O_LARGEFILE) = 5
> fstat64(5, {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0
> close(5)                                = 0
> mount("/dev/mapper/vg100-lvol0", "/tmp/.gfs2meta", "gfs2meta", 0,
> NULL) = -1 EINVAL (Invalid argument)
> write(2, "gfs2_grow: ", 11gfs2_grow: )             = 11
> write(2, "Couldn't mount /tmp/.gfs2meta : "..., 49Couldn't mount
> /tmp/.gfs2meta : Invalid argument
> ) = 49
> exit_group(1)                           = ?
> 
> 
> On Tue, Jan 5, 2010 at 6:27 AM, Abhijith Das <adas at redhat.com> wrote:
> > Hi,
> >
> > >From the following message, it looks like the gfs2meta mount
> routine is not able to locate the gfs2 mountpoint.
> > "Dec 31 15:04:56 wplccdlvm446 kernel: GFS2: gfs2 mount does not
> exist"
> > Can you confirm that /proc/mounts and /etc/mtab all agree on the
> mounted gfs2 at /gfs?
> > Also, can you run gfs2_grow under strace so that we can see what
> arguments gfs2_grow passes to the mount() system call when it tries to
> mount the gfs2meta filesystem?
> >
> > Thanks!
> > --Abhi
> >
> > ----- "Diamond Li" <diamondiona at gmail.com> wrote:
> >
> >> From: "Diamond Li" <diamondiona at gmail.com>
> >> To: "linux clustering" <linux-cluster at redhat.com>
> >> Sent: Monday, January 4, 2010 2:25:59 AM GMT -06:00 US/Canada
> Central
> >> Subject: Re: [Linux-cluster] gfs2_grow does not work
> >>
> >> could someone kindly help me to get through?
> >>
> >> thanks in advance!
> >>
> >> On Thu, Dec 31, 2009 at 3:16 PM, Diamond Li
> <diamondiona at gmail.com>
> >> wrote:
> >> > from system log, I can see the erorr message:
> >> >
> >> > Dec 31 15:04:56 wplccdlvm446 kernel: GFS2: gfs2 mount does not
> >> exist
> >> >
> >> > but I have mounted gfs2 file system under /gfs folder and I can
> do
> >> > operations such as mkdir, rm, successfully.
> >> >
> >> >
> >> >
> >> > On Thu, Dec 31, 2009 at 2:55 PM, Diamond Li
> <diamondiona at gmail.com>
> >> wrote:
> >> >> Hello,
> >> >>
> >> >> I am trying to grow a gfs2 file system, unfortunately  it does
> not
> >> work.
> >> >>
> >> >> anyone has similar issues or I always have bad luck?
> >> >>
> >> >> [root at wplccdlvm446 gfs]# mount
> >> >>
> >> >> /dev/mapper/vg100-lvol0 on /gfs type gfs2
> >> (rw,hostdata=jid=0:id=131074:first=1)
> >> >>
> >> >> [root at wplccdlvm446 gfs]# gfs2_grow -v /gfs
> >> >> Initializing lists...
> >> >> gfs2_grow: Couldn't mount /tmp/.gfs2meta : Invalid argument
> >> >>
> >> >> [root at wplccdlvm446 gfs]# ls -a /tmp/.gfs2meta/
> >> >> .  ..
> >> >>
> >> >>
> >> >> [root at wplccdlvm446 gfs]# uname -r
> >> >> 2.6.18-164.el5
> >> >>
> >> >> [root at wplccdlvm446 gfs]# cat /etc/redhat-release
> >> >> Red Hat Enterprise Linux Server release 5.4 (Tikanga)
> >> >>
> >> >
> >>
> >> --
> >> Linux-cluster mailing list
> >> Linux-cluster at redhat.com
> >> https://www.redhat.com/mailman/listinfo/linux-cluster
> >
> > --
> > Linux-cluster mailing list
> > Linux-cluster at redhat.com
> > https://www.redhat.com/mailman/listinfo/linux-cluster
> 
> --
> Linux-cluster mailing list
> Linux-cluster at redhat.com
> https://www.redhat.com/mailman/listinfo/linux-cluster




More information about the Linux-cluster mailing list