<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Sebastian</p>
    <p>It looks like what's going on is as Daniel described.  Hagfish
      seems to use an API call (get_file_size) that's supported by EDK2,
      but not by many commercial offerings.  I think it'd almost
      certainly be possible to update Hagfish such that it doesn't
      depend on it - something like preallocating a "reasonably-sized"
      buffer, and if it turns out it wasn't big enough trying again with
      a larger one.  It's been a few years since I wrote this stuff, but
      I think you'll get back an EFI_BUFFER_TOO_SMALL if it was too
      small, and *BufferSize will be filled with the actual size so that
      you can reallocate the buffer.  We'd be happy to integrate a patch
      if you wanted to modify it.</p>
    <p>David<br>
    </p>
    <div class="moz-cite-prefix">On 11/3/21 2:19 pm, Schwyn Daniel
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:6734ed4ced964739bb6608fab9b1352c@inf.ethz.ch">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style>@font-face
        {font-family:Helvetica;
        panose-1:2 11 6 4 2 2 2 2 2 4;}@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}p.yiv8742540900msonormal, li.yiv8742540900msonormal, div.yiv8742540900msonormal
        {mso-style-name:yiv8742540900msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}p.yiv8742540900msonormal1, li.yiv8742540900msonormal1, div.yiv8742540900msonormal1
        {mso-style-name:yiv8742540900msonormal1;
        margin:0cm;
        font-size:11.0pt;
        font-family:"Arial",sans-serif;}span.E-MailFormatvorlage33
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}div.WordSection1
        {page:WordSection1;}</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US">Hi
            Sebastian,<o:p></o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US"
            lang="EN-US">David and I are both part of the Barrelfish
            core team at ETH so our setup is the same</span><span
            style="font-family:"Segoe UI
            Emoji",sans-serif;mso-fareast-language:EN-US"
            lang="EN-US">😉</span><span
            style="mso-fareast-language:EN-US" lang="EN-US"> We do load
            Hagfish over PXE but as far as I know always directly with
            the PXE implementation in EDK2. Hagfish is theoretically
            designed to be flexible and cover as many EFI based boot
            environments as possible. In practice it’s only tested on
            the machines we have. Those are EDK2 based and the PXE
            implementation in there supports the two MTFTP opcodes we
            use. It should be possible to either implement support in
            iPXE or make Hagfish not use the get_file_size e.g. by
            allocating a large enough buffer and make sure the read_file
            doesn’t overflow it.<o:p></o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US"
            lang="EN-US"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US"
            lang="EN-US">Regards,<o:p></o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US"
            lang="EN-US">Daniel<o:p></o:p></span></p>
        <p class="MsoNormal"><span style="mso-fareast-language:EN-US"
            lang="EN-US"><o:p> </o:p></span></p>
        <div>
          <div style="border:none;border-top:solid #E1E1E1
            1.0pt;padding:3.0pt 0cm 0cm 0cm">
            <p class="MsoNormal"><b><span lang="DE">Von:</span></b><span
                lang="DE"> <a class="moz-txt-link-abbreviated" href="mailto:sebastian.scherbel@fau.de">sebastian.scherbel@fau.de</a>
                <a class="moz-txt-link-rfc2396E" href="mailto:sebastian.scherbel@fau.de"><sebastian.scherbel@fau.de></a>
                <br>
                <b>Gesendet:</b> Mittwoch, 10. März 2021 16:38<br>
                <b>An:</b> Schwyn Daniel
                <a class="moz-txt-link-rfc2396E" href="mailto:daniel.schwyn@inf.ethz.ch"><daniel.schwyn@inf.ethz.ch></a><br>
                <b>Cc:</b> <a class="moz-txt-link-abbreviated" href="mailto:barrelfish-users@lists.inf.ethz.ch">barrelfish-users@lists.inf.ethz.ch</a><br>
                <b>Betreff:</b> Re: AW: [Barrelfish-users] [Barrelfish]
                Hagfish kernel image structure and latest version<o:p></o:p></span></p>
          </div>
        </div>
        <p class="MsoNormal"><o:p> </o:p></p>
        <div>
          <div id="ydp299dcbf2yiv8742540900">
            <div>
              <div>
                <div>
                  <p class="MsoNormal"><span
                      style="font-size:10.0pt;font-family:"Helvetica",sans-serif">Hi
                      Daniel,<o:p></o:p></span></p>
                  <div>
                    <p class="MsoNormal"><span
                        style="font-size:10.0pt;font-family:"Helvetica",sans-serif"><o:p> </o:p></span></p>
                  </div>
                  <div>
                    <p class="MsoNormal"><span
                        style="font-size:10.0pt;font-family:"Helvetica",sans-serif">thank
                        you for your reply. That's what I already
                        suspected.<o:p></o:p></span></p>
                  </div>
                  <div>
                    <p class="MsoNormal"><span
                        style="font-size:10.0pt;font-family:"Helvetica",sans-serif"><o:p> </o:p></span></p>
                  </div>
                  <div>
                    <p class="MsoNormal"><span
                        style="font-size:10.0pt;font-family:"Helvetica",sans-serif">I'm
                        waiting to hear back from David about his setup.
                        He seemed quite sure that chainloading works, so
                        I was a bit surprised that neither iPXE nor Grub
                        did work for me on EDK2. <o:p></o:p></span></p>
                  </div>
                  <div>
                    <p class="MsoNormal"><span
                        style="font-size:10.0pt;font-family:"Helvetica",sans-serif"><o:p> </o:p></span></p>
                  </div>
                  <div>
                    <p class="MsoNormal"><span
                        style="font-size:10.0pt;font-family:"Helvetica",sans-serif">Otherwise,
                        I'll fix iPXE myself.
                        <o:p></o:p></span></p>
                  </div>
                  <div>
                    <p class="MsoNormal"><span
                        style="font-size:10.0pt;font-family:"Helvetica",sans-serif"><o:p> </o:p></span></p>
                  </div>
                  <div>
                    <p class="MsoNormal"><span
                        style="font-size:10.0pt;font-family:"Helvetica",sans-serif">Regards
                        Sebastian<o:p></o:p></span></p>
                  </div>
                </div>
                <div>
                  <p class="MsoNormal"><span
                      style="font-size:10.0pt;font-family:"Helvetica",sans-serif"><o:p> </o:p></span></p>
                </div>
                <div
                  id="ydp299dcbf2yiv8742540900yahoo_quoted_5616699740">
                  <div>
                    <div>
                      <p class="MsoNormal"><span
style="font-size:10.0pt;font-family:"Helvetica",sans-serif;color:#26282A">Am
                          Mittwoch, 10. März 2021, 10:59:48 MEZ hat
                          Schwyn Daniel <<a
                            href="mailto:daniel.schwyn@inf.ethz.ch"
                            moz-do-not-send="true">daniel.schwyn@inf.ethz.ch</a>>
                          Folgendes geschrieben:
                          <o:p></o:p></span></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><span
style="font-size:10.0pt;font-family:"Helvetica",sans-serif;color:#26282A"><o:p> </o:p></span></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><span
style="font-size:10.0pt;font-family:"Helvetica",sans-serif;color:#26282A"><o:p> </o:p></span></p>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
        <div id="yiv8742540900yqt62089">
          <div>
            <div id="yiv8742540900">
              <div>
                <div>
                  <p class="yiv8742540900msonormal">Hi Sebastian,<o:p></o:p></p>
                  <p class="yiv8742540900msonormal"> <o:p></o:p></p>
                  <p class="yiv8742540900msonormal"><span lang="EN-US">I
                      have seen this error before with iPXE when I tried
                      chainloading Hagfish with iPXE on top of U-Boot
                      with EFI support. U-Boot’s EFI support is rather
                      minimalistic so I’m not sure the cause was the
                      same in my case. Looking at the iPXE source code
                      though it looks to me as if it only supports the
                      EFI_PXE_BASE_CODE_MTFTP_READ_FILE opcode while
                      Hagfish also needs the
                      EFI_PXE_BASE_CODE_MTFTP_GET_FILE_SIZE operation to
                      allocate appropriately sized buffers for the files
                      it wants to load.</span><o:p></o:p></p>
                  <p class="yiv8742540900msonormal"><span lang="EN-US"> </span><o:p></o:p></p>
                  <p class="yiv8742540900msonormal"><span lang="EN-US">Regards,</span><o:p></o:p></p>
                  <p class="yiv8742540900msonormal"><span lang="EN-US">Daniel</span><o:p></o:p></p>
                  <p class="yiv8742540900msonormal"><span lang="EN-US"> </span><o:p></o:p></p>
                  <div id="yiv8742540900yqt96683">
                    <div>
                      <div style="border:none;border-top:solid #E1E1E1
                        1.0pt;padding:3.0pt 0cm 0cm 0cm">
                        <p class="yiv8742540900msonormal"><b><span
                              lang="DE">Von:</span></b><span lang="DE">
                            Barrelfish-users <<a
                              href="mailto:barrelfish-users-bounces@lists.inf.ethz.ch"
                              moz-do-not-send="true">barrelfish-users-bounces@lists.inf.ethz.ch</a>>
                            <b>Im Auftrag von </b><a
                              href="mailto:sebastian.scherbel@fau.de"
                              moz-do-not-send="true">sebastian.scherbel@fau.de</a><br>
                            <b>Gesendet:</b> Dienstag, 2. März 2021
                            22:56<br>
                            <b>An:</b> Cock David <<a
                              href="mailto:david.cock@inf.ethz.ch"
                              moz-do-not-send="true">david.cock@inf.ethz.ch</a>><br>
                            <b>Cc:</b> <a
                              href="mailto:barrelfish-users@lists.inf.ethz.ch"
                              moz-do-not-send="true">barrelfish-users@lists.inf.ethz.ch</a><br>
                            <b>Betreff:</b> Re: [Barrelfish-users]
                            [Barrelfish] Hagfish kernel image structure
                            and latest version</span><o:p></o:p></p>
                      </div>
                    </div>
                    <p class="yiv8742540900msonormal"> <o:p></o:p></p>
                    <div>
                      <div>
                        <div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif">Hello,</span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif">>Hagfish
                                definitely supports chainloading over
                                PXE - that's exactly what it was
                                designed for.</span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif">Which
                                bootloaders have you tested? What does
                                your setup look like?</span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif">I
                                have tried:</span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif">EDK2
                                -> iPXE -> Hagfish</span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><i><span
                                  style="font-size:10.0pt;font-family:"Arial",sans-serif">iPXE>
                                  chain tftp://x.x.x.x/Hagfish_ETHZ.efi</span></i><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><i><span
                                  style="font-size:10.0pt;font-family:"Arial",sans-serif">...<br>
                                  Hagfish UEFI loader starting<br>
                                  UEFI vendor: EDK II<br>
                                  Hagfish loaded at 402D9000, size
                                  147456B, by handle 41839B98<br>
                                  Could not connect to shell or not
                                  enough parameters, assuming PXE boot.<br>
                                  Connecting to the PXE service that
                                  loaded me.<br>
                                  PXE loader at 403ED660, revision
                                  10000, running<br>
                                  Loading "hagfish.cfg.10.0.0.10"<br>
                                  <b>Mtftp: Unsupported, <br>
                                    file size: Unsupported</b></span></i><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif">EDK2
                                -> Grub2 -> Hagfish</span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><i><span
                                  style="font-size:10.0pt;font-family:"Arial",sans-serif">grub>
                                  boot<br>
                                  Status: 0x0000000E<br>
                                  Failed to initialize ShellLib,
                                  aborting.<br>
                                  Hagfish UEFI loader starting<br>
                                  UEFI vendor: EDK II<br>
                                  Hagfish loaded at 402DA000, size
                                  147456B, by handle 41862A18<br>
                                  Could not connect to shell or not
                                  enough parameters, assuming PXE boot.<br>
                                  Connecting to the PXE service that
                                  loaded me.<br>
                                  <b>OpenProtocol: Unsupported<br>
                                    Failed to initialize loader: Load
                                    Error</b></span></i><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><o:p></o:p></p>
                          </div>
                          <div>
                            <p class="yiv8742540900msonormal"><span
                                style="font-size:10.0pt;font-family:"Arial",sans-serif">>
                                The error there seems to be the UEFI
                                implementation not supporting TFTP - did
                                you compile it in?</span><o:p></o:p></p>
                          </div>
                          <p class="yiv8742540900msonormal"><span
                              style="font-size:10.0pt;font-family:"Arial",sans-serif">When
                              I load Hagfish directly, everything works
                              fine. On American Megatrends Aptio V and
                              EDK2.</span><o:p></o:p></p>
                        </div>
                        <div>
                          <p class="yiv8742540900msonormal"><span
                              style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><o:p></o:p></p>
                        </div>
                      </div>
                      <div>
                        <p class="yiv8742540900msonormal"><span
                            style="font-size:10.0pt;font-family:"Arial",sans-serif">Regards
                            Sebastian</span><o:p></o:p></p>
                      </div>
                    </div>
                    <div>
                      <p class="yiv8742540900msonormal"><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A">Am
                          Donnerstag, 28. Januar 2021, 16:36:02 MEZ hat
                          David Cock <<a
                            href="mailto:david.cock@inf.ethz.ch"
                            target="_blank" moz-do-not-send="true">david.cock@inf.ethz.ch</a>>
                          Folgendes geschrieben: </span><o:p></o:p></p>
                    </div>
                    <div>
                      <p class="yiv8742540900msonormal"><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A"> </span><o:p></o:p></p>
                    </div>
                    <div>
                      <p class="yiv8742540900msonormal"><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A"> </span><o:p></o:p></p>
                    </div>
                    <div id="yiv8742540900">
                      <div>
                        <p><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A">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.</span><o:p></o:p></p>
                        <p><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A">The
                            error there seems to be the UEFI
                            implementation not supporting TFTP - did you
                            compile it in?</span><o:p></o:p></p>
                        <p><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A">David</span><o:p></o:p></p>
                        <div id="yiv8742540900yqtfd48517">
                          <div>
                            <p class="yiv8742540900msonormal1"><span
                                style="font-size:10.0pt;color:#26282A">On
                                28/1/21 3:53 pm,
                                <a
                                  href="mailto:sebastian.scherbel@fau.de"
                                  target="_blank" moz-do-not-send="true">sebastian.scherbel@fau.de</a>
                                wrote:</span><o:p></o:p></p>
                          </div>
                        </div>
                      </div>
                      <div id="yiv8742540900yqtfd10124">
                        <div>
                          <div>
                            <div>
                              <div>
                                <div>
                                  <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">Hello,</span><o:p></o:p></p>
                                </div>
                                <div>
                                  <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                                </div>
                                <div>
                                  <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">sounds good. I have tried to
                                      chainload Hagfish after iPXE.
                                      However, loading of the cfg fails
                                      on QEMU and on the real hardware
                                      with the same error.</span><o:p></o:p></p>
                                </div>
                                <div>
                                  <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                                </div>
                                <div>
                                  <div>
                                    <p class="yiv8742540900msonormal1"><i><span
style="font-size:10.0pt;color:#26282A">Hagfish UEFI loader starting<br>
                                          UEFI vendor: American
                                          Megatrends<br>
                                          Hagfish loaded at F951D000,
                                          size 143360B, by handle
                                          F6EA1D18<br>
                                          Could not connect to shell or
                                          not enough parameters,
                                          assuming PXE boot.<br>
                                          Connecting to the PXE service
                                          that loaded me.<br>
                                          PXE loader at F5EE1840,
                                          revision 10000, running<br>
                                          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>
                                          <b>Mtftp: Unsupported, </b></span></i><o:p></o:p></p>
                                    <div>
                                      <p class="yiv8742540900msonormal1"><b><i><span
style="font-size:10.0pt;color:#26282A">file size: Unsupported</span></i></b><o:p></o:p></p>
                                    </div>
                                    <div>
                                      <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                                    </div>
                                    <div>
                                      <div>
                                        <p
                                          class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">Is this a known bug? Is
                                            chainloading unsupported?
                                            Your setup is directly
                                            booting into Hagfish?</span><o:p></o:p></p>
                                      </div>
                                    </div>
                                  </div>
                                </div>
                                <div>
                                  <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                                </div>
                                <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">Regards Sebastian
                                  </span><o:p></o:p></p>
                              </div>
                              <div>
                                <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                              </div>
                            </div>
                          </div>
                          <div id="yiv8742540900yahoo_quoted_2497327118">
                            <div>
                              <div>
                                <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">Am Donnerstag, 28. Januar 2021,
                                    14:03:36 MEZ hat David Cock
                                    <a
                                      href="mailto:david.cock@inf.ethz.ch"
                                      target="_blank"
                                      moz-do-not-send="true"><david.cock@inf.ethz.ch></a>
                                    Folgendes geschrieben:
                                  </span><o:p></o:p></p>
                              </div>
                              <div>
                                <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                              </div>
                              <div>
                                <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                              </div>
                              <div>
                                <div id="yiv8742540900">
                                  <div>
                                    <p><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A">Sebastian,</span><o:p></o:p></p>
                                    <p><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A">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.</span><o:p></o:p></p>
                                    <p><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A">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.</span><o:p></o:p></p>
                                    <p><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A">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.</span><o:p></o:p></p>
                                    <p><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A">David</span><o:p></o:p></p>
                                    <div id="yiv8742540900yqt90781">
                                      <div>
                                        <p
                                          class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">On 27/1/21 5:41 pm,
                                            <a
                                              href="mailto:sebastian.scherbel@fau.de"
                                              target="_blank"
                                              moz-do-not-send="true">sebastian.scherbel@fau.de</a>
                                            wrote:</span><o:p></o:p></p>
                                      </div>
                                    </div>
                                  </div>
                                  <div id="yiv8742540900yqt19324">
                                    <div>
                                      <div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">Hello,</span><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">I'm a CS student trying to port
                                              an research operating
                                              system from x86_64 to
                                              ARMv8 and stumbled across
                                              Hagfish.</span><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">Hagfish should basically be able
                                              to load any ELF with its
                                              sections into memory with
                                              minor modifications? Or is
                                              there certain requirement
                                              for the kernel image
                                              structure that I didn't
                                              notice while reading your
                                              publication [1] and
                                              skimming the source code?</span><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">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><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">Regards Sebastian</span><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A"> </span><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">[0]
                                              <a
href="https://lists.inf.ethz.ch/pipermail/barrelfish-users/2020-March/001597.html"
                                                target="_blank"
                                                moz-do-not-send="true">
https://lists.inf.ethz.ch/pipermail/barrelfish-users/2020-March/001597.html</a></span><o:p></o:p></p>
                                        </div>
                                        <div>
                                          <p
                                            class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">[1]
                                              <a
                                                href="http://www.barrelfish.org/publications/TN-022-ARMv8.pdf"
                                                target="_blank"
                                                moz-do-not-send="true">
http://www.barrelfish.org/publications/TN-022-ARMv8.pdf</a></span><o:p></o:p></p>
                                        </div>
                                      </div>
                                      <p class="yiv8742540900msonormal1"
                                        style="margin-bottom:12.0pt"><o:p> </o:p></p>
                                      <p class="MsoNormal"><span
                                          style="font-size:10.0pt;font-family:"Courier
                                          New";color:#26282A">_______________________________________________</span><span
style="font-size:10.0pt;font-family:"Courier New""><o:p></o:p></span></p>
                                      <p class="MsoNormal"><span
                                          style="font-size:10.0pt;font-family:"Courier
                                          New";color:#26282A">Barrelfish-users
                                          mailing list</span><span
                                          style="font-size:10.0pt;font-family:"Courier
                                          New""><o:p></o:p></span></p>
                                      <p class="MsoNormal"><span
                                          style="font-size:10.0pt;font-family:"Courier
                                          New";color:#26282A"><a
                                            href="mailto:Barrelfish-users@lists.inf.ethz.ch"
                                            target="_blank"
                                            moz-do-not-send="true">Barrelfish-users@lists.inf.ethz.ch</a></span><span
style="font-size:10.0pt;font-family:"Courier New""><o:p></o:p></span></p>
                                      <p class="MsoNormal"><span
                                          style="font-size:10.0pt;font-family:"Courier
                                          New";color:#26282A"><a
                                            href="https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users"
                                            target="_blank"
                                            moz-do-not-send="true">https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users</a></span><span
style="font-size:10.0pt;font-family:"Courier New""><o:p></o:p></span></p>
                                    </div>
                                  </div>
                                </div>
                                <div id="yiv8742540900yqt99156">
                                  <p class="yiv8742540900msonormal1"><span
style="font-size:10.0pt;color:#26282A">_______________________________________________<br>
                                      Barrelfish-users mailing list<br>
                                      <a
                                        href="mailto:Barrelfish-users@lists.inf.ethz.ch"
                                        target="_blank"
                                        moz-do-not-send="true">Barrelfish-users@lists.inf.ethz.ch</a><br>
                                      <a
                                        href="https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users"
                                        target="_blank"
                                        moz-do-not-send="true">https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users</a></span><o:p></o:p></p>
                                </div>
                              </div>
                            </div>
                          </div>
                          <p class="yiv8742540900msonormal1"
                            style="margin-bottom:12.0pt"><o:p> </o:p></p>
                          <p class="MsoNormal"><span
                              style="font-size:10.0pt;font-family:"Courier
                              New";color:#26282A">_______________________________________________</span><span
style="font-size:10.0pt;font-family:"Courier New""><o:p></o:p></span></p>
                          <p class="MsoNormal"><span
                              style="font-size:10.0pt;font-family:"Courier
                              New";color:#26282A">Barrelfish-users
                              mailing list</span><span
                              style="font-size:10.0pt;font-family:"Courier
                              New""><o:p></o:p></span></p>
                          <p class="MsoNormal"><span
                              style="font-size:10.0pt;font-family:"Courier
                              New";color:#26282A"><a
                                href="mailto:Barrelfish-users@lists.inf.ethz.ch"
                                target="_blank" moz-do-not-send="true">Barrelfish-users@lists.inf.ethz.ch</a></span><span
style="font-size:10.0pt;font-family:"Courier New""><o:p></o:p></span></p>
                          <p class="MsoNormal"><span
                              style="font-size:10.0pt;font-family:"Courier
                              New";color:#26282A"><a
                                href="https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users"
                                target="_blank" moz-do-not-send="true">https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users</a></span><span
style="font-size:10.0pt;font-family:"Courier New""><o:p></o:p></span></p>
                        </div>
                      </div>
                    </div>
                    <p class="yiv8742540900msonormal"><span
style="font-size:10.0pt;font-family:"Arial",sans-serif;color:#26282A">_______________________________________________<br>
                        Barrelfish-users mailing list<br>
                        <a
                          href="mailto:Barrelfish-users@lists.inf.ethz.ch"
                          target="_blank" moz-do-not-send="true">Barrelfish-users@lists.inf.ethz.ch</a><br>
                        <a
                          href="https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users"
                          target="_blank" moz-do-not-send="true">https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users</a></span><o:p></o:p></p>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
Barrelfish-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Barrelfish-users@lists.inf.ethz.ch">Barrelfish-users@lists.inf.ethz.ch</a>
<a class="moz-txt-link-freetext" href="https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users">https://lists.inf.ethz.ch/mailman/listinfo/barrelfish-users</a>
</pre>
    </blockquote>
  </body>
</html>