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

lilo problems explained

For those who don't know: for a while now, CVS boot-floppies has not been
able to install lilo on the hard disk. dinstall segfaults each time. I
tracked this down to a change Mark made a while ago to bootconfig.c. The
change included code like this:

/* is_first_ide: return true if partition is on the first IDE disk */
int is_first_ide(struct fdisk_partition *part)
  return strcmp(part->disk->name, DEV_HDA) == 0;

The problem with this code is that part->disk is NULL or has garbage in it
or something! As far as I can tell, no code ever sets Root->disk to a value.
Needless to say, that causes an immediate segfault.

I have commented out the tests Mark added, so we can get 2.2.5 out the door.
Mark, if you want to go in and fix it properly, you will probably have to
modify libfdisk so it actually fills the Root->disk data structure.

BTW, I was unable to find Mark's name or email easily -- I'm not sure what
the situation is, but he checked in the changes as "mvw", and "mvw" does not
appear in the keyring, in db.debian.org, or as a account on master or va. I
eventually worked back and found his name and email in a reply to a bug
report he mentioned in the cvs commit message. This is very annoying; if we
have people writing to cvs, we need some way to easily look up who they
really are based on the id they checked things in as so we can contact them.
I don't know a good fix, except having everyone who ever commits to cvs note
their name and email in Maintainers..

see shy jo

Reply to: