FS#18994 - custom options for filesystems not processed correctly and causing failures

Attached to Project: Release Engineering
Opened by Rasmus Edgar (ashren) - Thursday, 08 April 2010, 07:56 GMT
Last edited by Dieter Plaetinck (Dieter_be) - Sunday, 18 April 2010, 16:22 GMT
Task Type Bug Report
Category AIF
Status Closed
Assigned To No-one
Architecture x86_64
Severity Medium
Priority Normal
Reported Version 2010.04.05-testbuild
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

vgcreate fails in AIF with option "-s 32M" on pv /dev/vda2.

Tried several times from scratch.

It works from command line.

No aif.log found in /var/log/*.
This task depends upon

Closed by  Dieter Plaetinck (Dieter_be)
Sunday, 18 April 2010, 16:22 GMT
Reason for closing:  Fixed
Comment by Dieter Plaetinck (Dieter_be) - Monday, 12 April 2010, 17:51 GMT
Please specify more details.
which image do you use, netinstall or core. how did you do the partitioning and what's the partition layout.
what's the definition of all your filesystems?
what did you type in the dialogs?
for a volumegroup, it should ask:
- label
- which PV to use (depending on how many pv's you have)
- additional options

tell me _exactly_ what you entered.
and tell me what you see on tt7.
and you could do debuglogging if you invoke `aif -p interactive -d -l`


However, you could probably skip all of the above if you do this:
in
/usr/lib/aif/core/libs/lib-blockdevices-filesystems.sh
function process_filesystem (), where it does the vgcreate.
change this:
vgcreate $fs_opts $fs_label ${fs_params//:/ } >$LOG 2>&1;
to:
die_error "vgcreate $fs_opts $fs_label ${fs_params//:/ }"
Comment by Rasmus Edgar (ashren) - Monday, 12 April 2010, 19:07 GMT
Sorry for the lack of details of initial post.

I use the archlinux-2010.04.05-netinstall-x86_64.iso image.

I tried again with Vbox with the exact same result.

I have two partitions.

/dev/sda1
/dev/sda2

/dev/sda1 is used for boot
/dev/sda2 is set as type 8e (LVM)

With aif I specify /dev/sda2 as a PV.
Next I specify that a VG named vg00 should be created on /dev/sda2 with the options "-s 32M"
I then proceed by creating LV's on this VG.

Afterwards I specify filesystems and mountpoints for these LV's.

After selecting "Done" errors appear. See attached screenshot.

From what I can tell from the tty7 output it seems that white-spaces are the problem since "32M" is underscored right before it "_32M" and is therefore not recognized as an argument. Actually I noticed that a white space is replaced with an _ immediately. This is probably why is does not work. If I enter -s32M it creates the partitions but Physical Extents of 1GB or more, but creates the partitions albeit incorrectly.

I tried replacing the vgcreate command in AIF with the die_error string you supplied, but then AIF would not run.




Comment by Dieter Plaetinck (Dieter_be) - Sunday, 18 April 2010, 10:29 GMT
fixed in git.
there is now better, safer more consistent encoding/decoding of whitespace in both fs_opts and fs-params.
See: http://github.com/Dieterbe/aif/commit/4418f59e32858d7badcc8e9b23dd6c26b26c42f0
i built new packages and tested giving options for vgcreate and cryptsetup. for me it works fine. 'vgdisplay' says PE size is 32MiB.

if you also want to verify it, try this:
- boot cd
- aif -p partial-configure-network # or just dhcpd eth0 or whatever
- wget http://build.archlinux.org/pkg/aif-2010.04.18-1-any.pkg.tar.xz
- wget http://build.archlinux.org/pkg/libui-sh-2010.04.18-1-any.pkg.tar.xz
- pacman -U libui-sh-2010.04.18-1-any.pkg.tar.xz
- pacman -Rk aif ; pacman -Uf aif-2010.04.18-1-any.pkg.tar.xz # workaround for problems with /usr/share permissions

and then start aif or /arch/setup as usual.
Comment by Dieter Plaetinck (Dieter_be) - Sunday, 18 April 2010, 16:22 GMT

Loading...