I am assuming that you are using lilo as your boot loader and HDD size is 40GB
try again the rescue mode it will find your root partion and mount it on /mnt/sysimage (redhat) or somwhere else just look where it mounts the root partition than do chroot /mnt/sysimage or the directory where it mounts your root partition than do vi /etc/lilo.conf than look for line linear your conf file change that to lba32 and save your file than type lilo -v on the prompt and reboot your system.
Hope this will solve your problem
Regards, Mohan Cheema.