vinum "Invalid argument"

Jake Maciejewski maciejej at
Mon Aug 15 22:14:33 PDT 2005

It's vinum_create() in commands.c throwing up those errors. It looks
like it's actually failing to parse my config file. I tried to track
down the problem, and either I'm missing something in the code, or it
fails as follows:

char buffer[BUFSIZE];				    /* read config file in here */

next mention of "buffer" it's being cast to a struct _ioctl_reply

reply = (struct _ioctl_reply *) &buffer;

next mention of "reply" is error checking from the struct

if (reply->error != 0) {			    /* error in config */
 if (!vflag)					    /* print this line anyway */
  printf("%4d: %s", file_line, commandline);
 fprintf(stdout, "** %d %s: %s\n",

The fprintf line is my suspicious error. Assuming the code only worked
because of compiler behaviors, I compiled vinum with gcc2. The gcc2
version loaded the second drive from my config, but not the first.

Someone please comment. This machine is used for backups, so right now I
have ~130Gb of data that exists only on a single ATA drive using the
experimental reiser4 Linux filesystem.

On Sat, 2005-08-13 at 14:26 -0500, Jake Maciejewski wrote:
> My vinum configuration got corrupted after booting with one of the
> drives disconnected. I think I've had this problem before and was able
> to fix it by recreating from the config file. Now when I run "vinum
> create vinum.conf", I get the following errors:
> # vinum create ~/vinum.conf
>    1: drive d1 device /dev/ad6s1e
> ** 1 : Invalid argument
>    2: drive d2 device /dev/ad4s1e
> ** 2 : Invalid argument
> 0 drives:
> ...
> Without the drives, my subdisks are "crashed", my plex is "faulty", and
> my volume is "down". I'm running HEAD. I've verified that both ad6s1 and
> ad4s1 have disklabels with e partitions of type vinum. Even if I can't
> preserve my data, my config should be valid and create the RAID 0 volume
> I had before.
Jake Maciejewski <maciejej at xxxxxxxx>

More information about the Bugs mailing list