#119 closed defect (fixed)
Revive support for Dell PowerEdge 7150 machine (ia64)
Reported by: | Martin Decky | Owned by: | Jakub Jermář |
---|---|---|---|
Priority: | major | Milestone: | 0.5.0 |
Component: | helenos/kernel/ia64 | Version: | mainline |
Keywords: | sashimi_regression | Cc: | |
Blocker for: | Depends on: | ||
See also: |
Description
Investigate why the current version of HelenOS fails to boot on the original Itanium 1 (Merced) machine (Dell PowerEdge 7150) and fix the issue.
Attachments (2)
Change History (15)
comment:1 by , 15 years ago
comment:3 by , 14 years ago
Summary: | Make Itanium 1 (Merced) machine boot again → Revive support for real world Itanium machines |
---|
In changeset:mainline,422, the boot support for ia64 was completely removed. In changeset:mainline,528, the boot support for ia64 was partially restored, but excluding the real world machines. Since we no longer want to incorporate GNU EFI in our sources and there are some areas, such as ia64 SMP support, that deserve to be cleaned up and/or streamlined, this ticket is a perfect one to represent the general effort to bring back the support for real world Itanium machines.
comment:4 by , 14 years ago
Owner: | set to |
---|---|
Priority: | minor → major |
Status: | new → assigned |
comment:5 by , 14 years ago
Milestone: | 0.5.0 → 0.5.1 |
---|
comment:6 by , 14 years ago
Keywords: | sashimi_regression added |
---|
comment:7 by , 14 years ago
I have just found out that it is possible to boot (quite successfully) the current mainline on our lab Dell PowerEdge 3250 dual Itanium 2 server by directly passing image.boot to elilo.
Of course, this is rather good luck as the kernel must be thinking that it is running in the simulator with some pre-defined values. The real values are currently not being passed to image.boot as of now.
The functionality is limited to the blinking bdsh cursor, but it is currently not possible to type in commands. However, the fact that the port to a real Itanium did not broke entirely is certainly quite encouraging and will make many things much easier.
comment:8 by , 14 years ago
It would be worth the try to repeat the same test on the MFF UK's Dell PowerEdge 7150 Itanium 1 server. Here is the relevant part of elilo.conf:
image=image.boot label=HelenOS
When ELILO displays its ELILO boot:
prompt, enter HelenOS
.
comment:9 by , 14 years ago
Summary: | Revive support for real world Itanium machines → Revive support for Dell PowerEdge 7150 machine (ia64) |
---|
Using ELILO on Dell PowerEdge 7150 was partially successful with revision mainline,996. The kernel booted mostly fine, but the Naming Service was killed due to "Speculation vector" exception at 0x1d9c0. The kernel console worked OK for a while, but locked up after typing "help" (not sure whether the "help" command was actually the cause of the lockup).
In any case, this is definitively a big progress since the last time HelenOS was tested on this machine (some years ago) and it's quite promising.
comment:10 by , 14 years ago
Thanks for testing this.
We need to make (hopefully) a small modification to make the kernel use the actual EFI memory map passed from ELILO, that could fix some random crashes.
As for the speculation exception, it appears the processor does not support speculative loads in hardware. In such cases, the operating system is expected to implement the missing functionality. The instructions in question are:
1d9c0: 02 40 00 1c 38 10 [MII] ld8.s r8=[r14] 1d9c6: 00 00 00 02 00 a0 nop.i 0x0;; 1d9cc: e4 00 00 01 chk.s.i r14,1dc10 <hash_table_find+0x290>
Another option would be to tell the compiler not to generate speculative instructions at all, provided there is an option for it.
comment:12 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
The system boots fine and appears to be working almost perfectly in uspace. Top and tetris are working, as well as most of the uspace tests. The only directly observable glitch is the clock running too fast.
The random crashes are still there (after a few commands in kconsole and just in the end of uspace malloc1 test), but I am still going to close this ticket as clearly the main objective has been fulfilled and the other issues are either covered or should be covered by different tickets.
comment:13 by , 13 years ago
Since mainline,1092, the real machines should be getting their memory map from EFI again.
Can we give some estimate on around what revision the machine stopped booting?