[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: multiboot2 and module2 boot issues via GRUB2
 
- To: Roman Shaposhnik <roman@xxxxxxxxxx>
 
- From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
 
- Date: Tue, 6 Apr 2021 19:41:57 +0100
 
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
 
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+r98C+YPJljSygfHhvW6GZ3EnK2dU1KjitvcHRJvzDs=; b=N1GUJoNR2tL4McbCIvv6Ykc2yiCuUCQlrrqQ9m2Zq7RDM72KLDkyu3t2Mms7kCiuEn/4yceXHfn7noUIkBSpfq29MU8UBIgZN76mIxxHCkdypBvKANlrAtsDRm0ZbQjt8IkeRnaE9cJLuHXuPQdZnJkfawek5MUXy+waaYJXFeuhIVQmGa6gEC+etL6fw5PnH1GdaCdEbarpUJ4KqzN1Y5c7HM8M4IlA+rfMzTLDTzW68OMHdwylp18fRWdTESj5m8aTeiYZPizt422Ymmg92eGStVvNCsVBjC/+IiAFGamjYXBHzb73ZAjuCiCce2AfeGfFuGvDkr7NEQRs3MZpAg==
 
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mnJJfewEIlG12WvUl0T4f3Bm0yafA+1rgulMPI4q9whDQtI+frLyW3nLSFKXM4wsEOf8IvoSoGbxAlOPY5bxXzathgzSHmkkBsntO1oFHcXXMb9PXAtvoM6yasQLHYg7YR6x71Pd5fasxIPE8SSkTtG/g1iPONsveoV2A5uHkwh6owAOjsyTXZSR2f1WDim7c8iuNpTFM0Vp81mmMRNQqoQwgAFYdpPP1Q/IqEk58cmVY04MIGnwcdOD2V5gml1XwLyjd/5u+qPDYI0j0buZzb2Qhoy6BNSZgfliwBGaG0beIfrS7mVqyU7DHMOsrAqI8ugoNRWLDQ9Wll5bvpBtiw==
 
- Authentication-results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
 
- Cc: Jan Beulich <jbeulich@xxxxxxxx>, Xen-devel	<xen-devel@xxxxxxxxxxxxxxxxxxxx>, <grub-devel@xxxxxxx>,	Roger Pau Monné <roger.pau@xxxxxxxxxx>
 
- Delivery-date: Tue, 06 Apr 2021 18:42:46 +0000
 
- Ironport-hdrordr: A9a23:wcILZ6DRkaq8J/blHegitMeALOonbusQ8zAX/mhLY1h8btGYm8 eynP4SyB/zj3IrVGs9nM2bUZPufVr1zrQwxYUKJ7+tUE3duGWuJJx/9oeK+VHdMgXE3Kpm2a 9kGpISNPTZEUV6gcHm4AOxDtYnx529/Lq1gPrFpk0NcShBQchbnmJEIyycFVB7QxQDIJI/Go aV6MYvnUvdRV08aMOnCn4ZG9XSvtGjruOaXTcqJT4CrDOPgzSh9aLgH3GjsCs2fjtTzd4ZgB D4uiPj4KHLiYDd9jb90Cvp441SiJ/dzLJ4dbaxo+w0DhmptQqyfoRmXNS5zUAIicWi8kwjnt WJgzpIBbUL11rrcmu4oQTg1mDbuV5EgR+Sqi7rvVLZrcP0Xz48AcZa7LgpFifx0EY8oMp6lJ tCwmPxjesnMTr7gC//69LUPisa8HacnHxKq59ws1ViS4cELJdeoYsDlXkla6soLWbR7YAqF/ RWF8fM5PpaWkPyVQGmgkBfhPOrRXg9BRGAXwwrvdGUySFfmDRDw1If39F3pAZNyLsND71/o8 jUOKVhk79DCucQcKJGHe8EBe+6EHbETx7gOH+bSG6XW50vCjbokdra8b817OaldNgj150pgq nMV1teqCobZ1/uIdfm5uwKzjn9BEGGGRj9wMBX4JZ0/pfmQqDwDCGFQFcy1+O9vvQkBNHBUf rbAuMWP9bTaU/VXapZ1Qz3XJdfbVMEVtcOh9o9U1WS5u3RLInHsfHabebzKLLhHS1MYBK8Pl IzGBzIYOlQ5EGiXXH1xDLLXWn2R0D59ZVsVIjWltJjjbQlB8lpiEw4mF657saEJXlpqaotZn ZzJ7vhj+eerWmy9mDY0nVxNnNmfwJoyYSld0kPiR4BMkvyf7pGkc6YY3pu0HyOIQI6aM/KDg hFpRBS9bisJ5KdgQAuYujXfF6yvj82njanXp0ckqqM6YPOYZUjFKsrX6R3CEHsDBx6mQFjrU 9Zcw8aTkrjFjfj4J/Vz6A8NaX6TZ1RkQ2rKclbpTb0rkOHv/wiQXMdQnqTS8KNuB0vQDBVn1 V11KcajNO76HGSAFp6pN59HExHaWyRDr4DKAiefo1blormfxxKQX6QiSaXjAwyfWTW51wf71 aRXhG8SLXuOB5wq3pY2qHl/BdPemKRc1lZR1p6vYd+fF628Upb4KuuXO6ewmGRYlwNzqUhKz nDeyIVOR4r7cuwzgSplDGLEmgGyp0iMvfGNqkqd6je1xqWWcu1vJBDO8UR0IduNdjovONObP mWfBWNKijkT8wuwA6Yqx8eSV9JgUhhtcmt/hLr7GK1hiFiRdXTJUlrXLEdLZW36XP+S/OBzZ V+ipYUsIKLQxHMQ+/D7ZuSSThJbi73iyqRacoDrJhPp6I8tLdpBfDgIHP1/UAC+C97Fdv+kU MVfb9y77/AMLJ+ZsB6QVMtwnMZ0PC0aHYxugP4AuUCbUggon/SMdSO+afJo9MUczq8jTq1HV mU6CtG+fjZGwOFyL4BEqo1SF4mInQU2TBH/OmYcZfXBxjvX+Zf/ECiOnv4VLNGUqCKFfExqR l9iuv40tO/Rm7d2ArKuyF8Lb8L22G7QdmqCAbJINV2ybWBSB2xq5rvxtWygjfxQSa6bEpdpb QtTz1uUu1zzh84jIM21SCuTLfQuUxNqSoG3Q1a
 
- Ironport-sdr: zMP7Xlwf7jpj+UWimiioXFE7XPAmvFSwLjH4xZuOD8Z1hL8WUboeDE/CK8Ltkj4sPdzvIJjyJu BebnfUCA0EKv5FvdFFEW9F+SNPFic0TGb6ImTmVFeoD0P2oRrH0OeDloDsp3yqw7/4s8mLrnxE T3DmIZM3Upq25o6siladPi5/bFr1aoQfapBNPkd8oZZAXTVsfMdcgQQuy7IPN/amgmWlTw977V aej0Iv05tFx2iEQnzybFbNq/4CfMV3QCNLFiapEGs3sVUxiHzVwd10V3EB+1BXK/R6NE5ST+yk zBs=
 
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
 
 
 
  
    On 06/04/2021 19:03, Roman Shaposhnik
      wrote: 
     
    
      
      
        
          
          
            On 06/04/2021 09:19,
              Jan Beulich wrote: 
              > On 01.04.2021 21:43, Andrew Cooper wrote: 
              >> On 01/04/2021 09:44, Roger Pau Monné wrote: 
              >>> On Thu, Apr 01, 2021 at 09:31:07AM +0200, Jan
              Beulich wrote: 
              >>>> On 01.04.2021 03:06, Roman Shaposhnik
              wrote: 
              >>>>> And the obvious next question: is my
              EVE usecase esoteric enough that 
              >>>>> I should just go ahead and do a
              custom GRUB patch or is there a more 
              >>>>> general interest in this? 
              >>>> Not sure if it ought to be a grub patch -
              the issue could as well 
              >>>> be dealt with in Xen, by concatenating
              modules to form a monolithic 
              >>>> initrd. 
              >>> I would rather have it done in the loader
              than Xen, mostly because 
              >>> it's a Linux boot specific format, and hence
              I don't think Xen should 
              >>> have any knowledge about it. 
              >>> 
              >>> If it turns out to be impossible to implement
              on the loader side we 
              >>> should consider doing it in Xen, but that's
              not my first option. 
              >> Concatenating random things which may or may not
              be initrds is 
              >> absolutely not something Xen should do.  We don't
              have enough context to 
              >> do it safely/sensibly. 
              > Well, I wasn't suggesting anywhere to concatenate
              random things. 
              > Instead I was envisioning a command line option
              giving us the 
              > context we need (e.g. "initrd=3+5"). 
               
              That's a massive layering violation, and incredibly
              fragile to the order 
              of lines in the boot stanza. 
             
             
             
            Don't have enough karma to argue Xen architectural side
              of things, but... 
              
            
              Either fix it by using a single monolithic initrd, which
              has worked 
              perfectly well for the past 2 decades 
             
             
             
            ...just to point out the obvious here:  even Debian who
              can HARDLY be 
            blamed for tracking the bleeding edge has been
              recommending this 
            for quite some time: 
            
            Obviously there's no way to do that with Xen today out
              of the box. 
           
         
       
     
     
    ? 
     
    Those instructions do work out of the box with Xen. 
     
    It seems that pxelinux gained support for multiple initrd fragments
    in 3.05, but the sum total of documentation I can find is in the
    changelog.  iPXE might have this ability, but it's documentation is
    self-contradictory on the matter. 
     
    
      
        
          
             
             
            Now, you can turn around and say "well, how hard could
              it be to 
            concatenate?". That's fair. But it is also fair to
              point out that everytime 
            we do that we portray Xen as "not quite as user
              friendly as X" (and 
            this is, of course, pure perception -- but if we want
              users to stick 
            perception matters a lot). 
           
         
       
     
     
    It's distinctly not trivial to do correctly at the Xen level, and
    fairly invasive in at least two areas of logic.  Specific firmware
    layouts and multiple fragments might even be impossible to
    concatenate, and its better for the bootloaders to bail if they
    can't make the memory layout work, than to leave Xen holding the the
    pieces and unable to boot.  Either way, it would appear that common
    bootloaders already have logic for this, which gets you a lot
    further than starting from scratch in Xen. 
     
     
    Furthermore, I don't think it fair to claim that this is a usability
    bug in Xen, when what the Linux people have done is upstream
    Linux-specific hacks to bootloaders.  Fixing the bootloaders to not
    have useful features be Linux specific benefits everyone using
    Multiboot, not just the Xen ecosystem.  If you're looking for
    general betterness to all OSS, then fixing the bootloaders is
    clearly the better approach. 
     
    ~Andrew 
  
 
    
     |