[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: silo goes wrong

Davide Barbieri wrote:
 > Ciao,
 > 	I've managed to compile silo with glibc,
 > don't know how (uh, I have only run 'make', and the
 > problem with __setjmp already defined in libc5
 > disappeared).
 > Now I cannot install silo, because:
 > "Fatal error: Cannot open superblock on /dev/sd"
 > (the reason is because /dev/sd result READ ONLY)
 > I'm working on it...

the problem is in this two line, from silo.c:

sprintf (spart, "/dev/sd%c%c", ((st1.st_dev & 0xf0) >> 4) + 'a', (st1.st_dev & 0xf) + '0');
sprintf (bootdev2, "/dev/sd%c1", ((st1.st_dev & 0xf0) >> 4) + 'a');

the result is that spart="/dev/sd" and bootdev2="/dev/sd"

obviously, there's no superblock on /dev/sd

they should be something like /dev/sda1

I think that those lines failed because st1 is a struct stat defined
in sys/stat.h; stat.h include some F_IS* symbols, too, and they are
already defined in linux/stat.h which is included from *fs.h
used by silo. To make sys/stat.h and linux/stat.h coexists, I have
added some #undef to silo sources, probably in the wrong way,
causing that error.

So, should I use <linux/stat.h> or <sys/stat.h>?

Any way, when I sobstitute those two lines with these one:

      sprintf (spart, "/dev/sda1");
      sprintf (bootdev2, "/dev/sda1");

silo is able to install itself; anyway, the boot fails with
only the two first letter: "SI"

still working on it


Davide Barbieri - paci@pluto.linux.it - paci@debian.org
http://www.pluto.linux.it - Leggi il Contratto Sociale del PLUTO!
PGP fingerprint =  CD 8D A9 1E DB 0C B0 16  F8 2F BF 63 52 49 8B A8

TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-sparc-request@lists.debian.org . 
Trouble?  e-mail to templin@bucknell.edu .

Reply to: