It is common for system memory maps to be grotesquely unreliable during POST. Many sanity checks have been added to the memory map reading code, but these do not catch all problems. Skip relocation entirely if called during POST. This should avoid the problems typically encountered, at the cost of slightly disrupting the memory map of an operating system booted via iPXE when iPXE was entered during POST. Since this is a very rare special case (used, for example, when reflashing an experimental ROM that would otherwise prevent the system from completing POST), this is an acceptable cost. Signed-off-by: Michael Brown <mcb30@ipxe.org>tags/v1.20.1
|
||
443 | 443 |
|
444 | 444 |
|
445 | 445 |
|
446 |
|
|
447 |
|
|
446 | 448 |
|
447 | 449 |
|
448 | 450 |
|
|
||
461 | 463 |
|
462 | 464 |
|
463 | 465 |
|
466 |
|
|
464 | 467 |
|
465 | 468 |
|
466 | 469 |
|
|
||
473 | 476 |
|
474 | 477 |
|
475 | 478 |
|
476 |
|
|
477 |
|
|
478 |
|
|
479 |
|
|
480 |
|
|
479 | 481 |
|
480 | 482 |
|
481 | 483 |
|
|
||
570 | 572 |
|
571 | 573 |
|
572 | 574 |
|
575 |
|
|
576 |
|
|
577 |
|
|
578 |
|
|
579 |
|
|
573 | 580 |
|
574 | 581 |
|
575 | 582 |
|
|
||
588 | 595 |
|
589 | 596 |
|
590 | 597 |
|
598 |
|
|
591 | 599 |
|
592 | 600 |
|
593 | 601 |
|
602 |
|
|
594 | 603 |
|
595 | 604 |
|
596 | 605 |
|
|
||
407 | 407 |
|
408 | 408 |
|
409 | 409 |
|
410 |
|
|
410 | 411 |
|
411 | 412 |
|
412 | 413 |
|
|
||
597 | 598 |
|
598 | 599 |
|
599 | 600 |
|
601 |
|
|
600 | 602 |
|
601 | 603 |
|
602 | 604 |
|
|
||
631 | 633 |
|
632 | 634 |
|
633 | 635 |
|
636 |
|
|
634 | 637 |
|
635 | 638 |
|
636 | 639 |
|
|
||
662 | 665 |
|
663 | 666 |
|
664 | 667 |
|
668 |
|
|
669 |
|
|
670 |
|
|
665 | 671 |
|
666 | 672 |
|
667 | 673 |
|
|
||
675 | 681 |
|
676 | 682 |
|
677 | 683 |
|
678 |
|
|
679 |
|
|
684 |
|
|
685 |
|
|
680 | 686 |
|
681 | 687 |
|
682 | 688 |
|
689 |
|
|
690 |
|
|
691 |
|
|
692 |
|
|
683 | 693 |
|
684 | 694 |
|
685 |
|
|
686 | 695 |
|
687 | 696 |
|
688 | 697 |
|
|
||
28 | 28 |
|
29 | 29 |
|
30 | 30 |
|
31 |
|
|
31 | 32 |
|
32 | 33 |
|
33 | 34 |
|