bugGNU GRUB - Bugs: bug #16721, Grub Hard Disk Error when using...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #16721: Grub Hard Disk Error when using SATA on EPOX EP-8K9A7I M/Board

Submitter:  Stuart Leigh <sleigh>
Submitted:  Thu 01 Jun 2006 12:35:50 PM UTC
Votes: 200
 
Category:  Booting Severity:  Major
Priority:  5 - Normal Item Group:  Non-software Error
Status:  None Privacy:  Public
Assigned to:  None Originator Name:  Stuart Leigh
Open/Closed:  Closed Release:  None
Release:  0.95 Reproducibility:  Every Time
Planned Release:  None

Sat 15 Dec 2007 09:13:53 PM UTC, comment #2: 

We've moved to GRUB 2 as a development platform. Please can you check if this bug still applies there, and if it does, reopen it?

Thanks

Robert Millan <robertmh>
Group administrator
Thu 01 Jun 2006 09:48:41 PM UTC, comment #1: 

I should add that the version of Grub that I am using is the one that comes with Solaris 10. This shouldn't make any difference to the problem however as the parts modified by Sun, namely the integration with the UFS filesystem etc happen later in the stage2 process and the problem I am experiencing is happening at the BIOS stage.

Stuart Leigh <sleigh>
Thu 01 Jun 2006 12:35:50 PM UTC, original submission:  

When using Grub version greater than 0.94 and with the SATA enabled on an EPOX EP-8K9A7I Motherboard with 2 SATA disks attached, a grub hard disk error is reported while loading stage2.

If the SATA is disabled in the BIOS then it works fine and doesn't have any problems loading stage 2.

The limited configurability of the BIOS means that I am limited to basically enabling and disabling of the SATA functionality.

The mainboard has a KT400A + VT8237 chipset

The chipset has Via raid capability, but this is not used so it effectively is JBOD.

The BIOS version is Award BIOS V6.00.

Other than the 2 SATA disks there are also 2 IDE disks attached.

The full disk setup ( partition sizes, geometry etc ) is to follow.

After a bit of investigation I have managed to track down the failure point to the asm.S and bios.c files in the stage2 directory of the grub0.95 source code. By modifying these 2 files I have managed to create a working stage 2 file that works with both SATA and non SATA enabled scenarios.

More specifically I modified the  biosdisk_int13_extensions function ( in the 0.95 souce ) to what it was in the asm.S file from grub version 0.94
and put back the code for the get_diskinfo_int13_extensions function in the asm.S file of the 0.95 source.

I also had to modify the calls in the bios.c file in the 0.95 source to what they were in the 0.93 source.

I have probably broken something else by doing this, but I am not an expert in either C programming or Assembly language, so I had to hack it in the worst possible way.

I will attach the modified source to asm.S and bios.c later.



Stuart Leigh <sleigh>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #10105:  bios.c added by sleigh (10KiB - text/x-csrc - modified bios.c file)
file #10104:  asm.S added by sleigh (48KiB - application/octet-stream - Modified asm.S file)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by robertmh (Posted a comment)
  • -email is unavailable- added by tocky (Voted in favor of this item)
  •  

    There are 200 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2007-12-15 robertmh Open/ClosedOpen Closed
    2007-11-28 tocky Carbon-Copy- Added tocky
    2006-09-14 timejunky Carbon-Copy- Added timejunky
    2006-06-01 sleigh Attached File- Added bios.c, #10105
    2006-06-01 sleigh Attached File- Added asm.S, #10104

    Back to the top

    Powered by Savane 3.13-f8d8.
    Corresponding source code