<html><head></head><body><div class="ydp2db9a271yahoo-style-wrap" style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:13px;"><div></div>
        <div dir="ltr" data-setdir="false"><div><div dir="ltr">Hello,</div><div dir="ltr"><br clear="none"></div><div dir="ltr"><span>>Hagfish definitely
      supports chainloading over PXE - that's exactly what it was
      designed for.</span></div><div dir="ltr"><span><span>Which bootloaders have you tested? <span>What does your setup look like?</span></span></span><br clear="none"></div><div><br clear="none"></div><div dir="ltr">I have tried:</div><div dir="ltr"><br clear="none"></div><div dir="ltr">EDK2 -> iPXE -> Hagfish</div><div dir="ltr"><br clear="none"></div><div dir="ltr"> <i><span>iPXE> chain tftp://x.x.x.x/Hagfish_ETHZ.efi</span></i></div><div><i><span>...</span><br clear="none">Hagfish UEFI loader starting<br clear="none">UEFI vendor: EDK II<br clear="none">Hagfish loaded at 402D9000, size 147456B, by handle 41839B98<br clear="none">Could not connect to shell or not enough parameters, assuming PXE boot.<br clear="none">Connecting to the PXE service that loaded me.<br clear="none">PXE loader at 403ED660, revision 10000, running<br clear="none">Loading "hagfish.cfg.10.0.0.10"<br clear="none"><b>Mtftp: Unsupported, <br clear="none">file size: Unsupported</b></i></div><div><br clear="none"></div><div dir="ltr"><br clear="none"></div><div dir="ltr">EDK2 -> Grub2 -> Hagfish</div><div dir="ltr"><br clear="none"></div> <div><i>grub> boot<br clear="none">Status: 0x0000000E<br clear="none">Failed to initialize ShellLib, aborting.<br clear="none">Hagfish UEFI loader starting<br clear="none">UEFI vendor: EDK II<br clear="none">Hagfish loaded at 402DA000, size 147456B, by handle 41862A18<br clear="none">Could not connect to shell or not enough parameters, assuming PXE boot.<br clear="none">Connecting to the PXE service that loaded me.<br clear="none"><b>OpenProtocol: Unsupported<br clear="none">Failed to initialize loader: Load Error</b></i></div><div dir="ltr"><br clear="none"></div><div dir="ltr">> The error there seems to be the UEFI implementation not
      supporting TFTP - did you compile it in?</div><span>When I load Hagfish directly, everything works fine. On American Megatrends<span> Aptio V </span></span><span>and EDK2.</span></div><div><br></div></div><div dir="ltr" data-setdir="false">Regards Sebastian<br></div>
        
        </div><div id="yahoo_quoted_5705071370" class="yahoo_quoted">
            <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
                
                <div>
                    Am Donnerstag, 28. Januar 2021, 16:36:02 MEZ hat David Cock <david.cock@inf.ethz.ch> Folgendes geschrieben:
                </div>
                <div><br></div>
                <div><br></div>
                <div><div id="yiv7443900970"><div>
    <p>What you're seeing there is Hagfish trying to load its
      configuration file over TFTP as it's figured out that it was
      itself loaded over PXE.  The README might be inconsistent wrt
      filenames - if in doubt, trust the code.  Hagfish definitely
      supports chainloading over PXE - that's exactly what it was
      designed for.<br clear="none">
    </p>
    <p>The error there seems to be the UEFI implementation not
      supporting TFTP - did you compile it in?</p>
    <p>David<br clear="none">
    </p>
    <div class="yiv7443900970yqt7243279203" id="yiv7443900970yqtfd48517"><div class="yiv7443900970moz-cite-prefix">On 28/1/21 3:53 pm,
      <a rel="nofollow noopener noreferrer" shape="rect" class="yiv7443900970moz-txt-link-abbreviated" ymailto="mailto:sebastian.scherbel@fau.de" target="_blank" href="mailto:sebastian.scherbel@fau.de">sebastian.scherbel@fau.de</a> wrote:<br clear="none">
    </div>
    <blockquote type="cite">
      </blockquote></div></div><div class="yiv7443900970yqt7243279203" id="yiv7443900970yqtfd10124"><div><div class="yiv7443900970ydp2ddda0a7yahoo-style-wrap" style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:13px;">
        <div dir="ltr">
          <div>
            <div dir="ltr">Hello,</div>
            <div dir="ltr"><br clear="none">
            </div>
            <div dir="ltr">sounds good. I have tried to chainload
              Hagfish after iPXE. <span>However, loading of the cfg
                fails on QEMU and on the real hardware with the same
                error.<br clear="none">
              </span></div>
            <div dir="ltr"><i><span><br clear="none">
                </span></i></div>
            <div dir="ltr">
              <div><i>Hagfish UEFI loader starting<br clear="none">
                  UEFI vendor: American Megatrends<br clear="none">
                  Hagfish loaded at F951D000, size 143360B, by handle
                  F6EA1D18<br clear="none">
                  Could not connect to shell or not enough parameters,
                  assuming PXE boot.<br clear="none">
                  Connecting to the PXE service that loaded me.<br clear="none">
                  PXE loader at F5EE1840, revision 10000, running<br clear="none">
                  Loading "hagfish.cfg.A.B.C.D"<b> (shouldn't the cfg
                    name be hafish.A.B.C.D.cfg according to the readme?)</b><br clear="none">
                  <b>Mtftp: Unsupported, <br clear="none">
                  </b></i>
                <div><i><b>file size: Unsupported</b></i></div>
                <div><b><br clear="none">
                  </b></div>
                <div dir="ltr">
                  <div dir="ltr"><span>Is this a
                      known bug? </span>Is chainloading unsupported?
                    Your setup is directly booting into Hagfish?</div>
                </div>
              </div>
            </div>
            <div><br clear="none">
            </div>
            Regards Sebastian </div>
          <div><br clear="none">
          </div>
        </div>
      </div>
      <div class="yiv7443900970yahoo_quoted" id="yiv7443900970yahoo_quoted_2497327118">
        <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
          <div> Am Donnerstag, 28. Januar 2021, 14:03:36 MEZ hat David
            Cock <a rel="nofollow noopener noreferrer" shape="rect" class="yiv7443900970moz-txt-link-rfc2396E" ymailto="mailto:david.cock@inf.ethz.ch" target="_blank" href="mailto:david.cock@inf.ethz.ch"><david.cock@inf.ethz.ch></a> Folgendes geschrieben: </div>
          <div><br clear="none">
          </div>
          <div><br clear="none">
          </div>
          <div>
            <div id="yiv7443900970">
              <div>
                <p>Sebastian,</p>
                <p>Hagfish is a custom loader for the Barrelfish CPU
                  driver, which operates under a few unusual
                  assumptions: Mainly, the CPU driver (kernel) itself is
                  not self-relocating, but relies on the bootloader
                  (Hagfish) to do the relocation for it.</p>
                <p>It would definitely be possible to modify Hagfish to
                  load an arbitrary ELF, however.  You'd have to make a
                  few changes in the relocation code to not look for
                  Barrelfish-specific segments and so on, but there's
                  nothing particularly weird or non-standard about it.</p>
                <p>Hagfish is pretty static, and doesn't change much
                  from version to version.  We'll update the repository
                  shortly (which we should have done together with the
                  release).  Feel free to ask more specific questions if
                  you decide to use it - we're happy to help.</p>
                <p>David<br clear="none">
                </p>
                <div class="yiv7443900970yqt9704820423" id="yiv7443900970yqt90781">
                  <div class="yiv7443900970moz-cite-prefix">On 27/1/21
                    5:41 pm, <a rel="nofollow noopener noreferrer" shape="rect" class="yiv7443900970moz-txt-link-abbreviated" ymailto="mailto:sebastian.scherbel@fau.de" target="_blank" href="mailto:sebastian.scherbel@fau.de">sebastian.scherbel@fau.de</a>
                    wrote:<br clear="none">
                  </div>
                  <blockquote type="cite"> </blockquote>
                </div>
              </div>
              <div class="yiv7443900970yqt9704820423" id="yiv7443900970yqt19324">
                <div>
                  <div class="yiv7443900970yahoo-style-wrap" style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:13px;">
                    <div dir="ltr">Hello,</div>
                    <div dir="ltr"><br clear="none">
                    </div>
                    <div dir="ltr">I'm a CS student trying to port an
                      research operating system from x86_64 to ARMv8 and
                      stumbled across Hagfish.</div>
                    <div dir="ltr"><br clear="none">
                    </div>
                    <div dir="ltr"><span><span>Hagfish should basically
                          be able to load any ELF with its sections into
                          memory with minor modifications? <span>Or is
                            there certain requirement for the kernel
                            image structure that I didn't notice while</span><span>
                            reading your publication [1] and skimming
                            the source code?</span></span></span><br clear="none">
                    </div>
                    <div dir="ltr"><br clear="none">
                    </div>
                    <div dir="ltr"><span>The last commit in the public
                        repository is from March 2017. But in the
                        changelog of your last Barrelfish release from
                        2020 states "Update Hagfish to latest version".
                        Have there been any bigger changes or
                        improvements in the meantime?</span></div>
                    <div dir="ltr"><br clear="none">
                    </div>
                    <div dir="ltr">Regards Sebastian</div>
                    <div dir="ltr"><br clear="none">
                    </div>
                    <div dir="ltr">[0] <a rel="nofollow noopener noreferrer" shape="rect" target="_blank" href="https://lists.inf.ethz.ch/pipermail/barrelfish-users/2020-March/001597.html">https://lists.inf.ethz.ch/pipermail/barrelfish-users/2020-March/001597.html</a></div>
                    <div dir="ltr">[1] <a rel="nofollow noopener noreferrer" shape="rect" target="_blank" href="http://www.barrelfish.org/publications/TN-022-ARMv8.pdf">http://www.barrelfish.org/publications/TN-022-ARMv8.pdf</a></div>
                  </div>
                  <br clear="none">
                  <fieldset class="yiv7443900970mimeAttachmentHeader"></fieldset>
                  <pre class="yiv7443900970moz-quote-pre">_______________________________________________
Barrelfish-users mailing list
<a rel="nofollow noopener noreferrer" shape="rect" class="yiv7443900970moz-txt-link-abbreviated" ymailto="mailto:Barrelfish-users@lists.inf.ethz.ch" target="_blank" href="mailto:Barrelfish-users@lists.inf.ethz.ch">Barrelfish-users@lists.inf.ethz.ch</a>
<a rel="nofollow noopener noreferrer" shape="rect" class="yiv7443900970moz-txt-link-freetext" target="_blank" href="https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users">https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users</a>
</pre>
                </div>
              </div>
            </div>
            <div class="yiv7443900970yqt9704820423" id="yiv7443900970yqt99156">_______________________________________________<br clear="none">
              Barrelfish-users mailing list<br clear="none">
              <a rel="nofollow noopener noreferrer" shape="rect" ymailto="mailto:Barrelfish-users@lists.inf.ethz.ch" target="_blank" href="mailto:Barrelfish-users@lists.inf.ethz.ch">Barrelfish-users@lists.inf.ethz.ch</a><br clear="none">
              <a rel="nofollow noopener noreferrer" shape="rect" target="_blank" href="https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users">https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users</a><br clear="none">
            </div>
          </div>
        </div>
      </div>
      <br clear="none">
      <fieldset class="yiv7443900970mimeAttachmentHeader"></fieldset>
      <pre class="yiv7443900970moz-quote-pre">_______________________________________________
Barrelfish-users mailing list
<a rel="nofollow noopener noreferrer" shape="rect" class="yiv7443900970moz-txt-link-abbreviated" ymailto="mailto:Barrelfish-users@lists.inf.ethz.ch" target="_blank" href="mailto:Barrelfish-users@lists.inf.ethz.ch">Barrelfish-users@lists.inf.ethz.ch</a>
<a rel="nofollow noopener noreferrer" shape="rect" class="yiv7443900970moz-txt-link-freetext" target="_blank" href="https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users">https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users</a>
</pre>
    
  </div></div></div><div class="yqt7243279203" id="yqtfd99660">_______________________________________________<br clear="none">Barrelfish-users mailing list<br clear="none"><a shape="rect" ymailto="mailto:Barrelfish-users@lists.inf.ethz.ch" href="mailto:Barrelfish-users@lists.inf.ethz.ch">Barrelfish-users@lists.inf.ethz.ch</a><br clear="none"><a shape="rect" href="https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users" target="_blank">https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users</a><br clear="none"></div></div>
            </div>
        </div></body></html>