How to start subiquity in qemu on ARM64?












0















I would like to run the Ubuntu installer in qemu. I have used the kernel from the respective Ubuntu CD images and have verified my command line using the AMD64 architecture:



$ qemu-system-x86_64 --version
QEMU emulator version 2.5.0 ..
$ isoinfo -R -x "/install/vmlinuz" -i bionic-server-amd64.iso >linux
$ qemu-system-x86_64 -nodefaults -nographic -kernel linux
-serial stdio -append "console=ttyS0"
-machine pc -cpu qemu64 -m 1G
[ 0.0000000] Linux version 4.15.0-44-generic ..


However, when I try the same thing for ARM64 architecture (not my host arch):



$ qemu-system-aarch64 --version
QEMU emulator version 2.5.0 ..
$ isoinfo -R -x "/install/vmlinuz" -i bionic-server-arm64.iso >linux
$ qemu-system-aarch64 -nodefaults -nographic -kernel linux
-serial stdio -append "console=ttyAMA0"
-machine virt -cpu cortex-a53 -m 1G


I get zero output at 100% cpu usage. How can i determine what went wrong?



Executing with -d unimp -D debug.log reveals:



read access to unsupported AArch64 system register op0:3 op1:0 crn:0 crm:7 op2:2









share|improve this question























  • Don't you always need to set -M and prepare a pflash and such for arm64, like described here ?

    – Christian Ehrhardt
    Feb 11 at 7:10











  • @ChristianEhrhardt afaik -M is just a deprecated Alias for -machine (which i did use), and -kernel an arch independent shortcut for "put this into ram and jump to it" (which should circumvent all issues from bootloader/EFI)

    – anx
    Feb 11 at 11:53


















0















I would like to run the Ubuntu installer in qemu. I have used the kernel from the respective Ubuntu CD images and have verified my command line using the AMD64 architecture:



$ qemu-system-x86_64 --version
QEMU emulator version 2.5.0 ..
$ isoinfo -R -x "/install/vmlinuz" -i bionic-server-amd64.iso >linux
$ qemu-system-x86_64 -nodefaults -nographic -kernel linux
-serial stdio -append "console=ttyS0"
-machine pc -cpu qemu64 -m 1G
[ 0.0000000] Linux version 4.15.0-44-generic ..


However, when I try the same thing for ARM64 architecture (not my host arch):



$ qemu-system-aarch64 --version
QEMU emulator version 2.5.0 ..
$ isoinfo -R -x "/install/vmlinuz" -i bionic-server-arm64.iso >linux
$ qemu-system-aarch64 -nodefaults -nographic -kernel linux
-serial stdio -append "console=ttyAMA0"
-machine virt -cpu cortex-a53 -m 1G


I get zero output at 100% cpu usage. How can i determine what went wrong?



Executing with -d unimp -D debug.log reveals:



read access to unsupported AArch64 system register op0:3 op1:0 crn:0 crm:7 op2:2









share|improve this question























  • Don't you always need to set -M and prepare a pflash and such for arm64, like described here ?

    – Christian Ehrhardt
    Feb 11 at 7:10











  • @ChristianEhrhardt afaik -M is just a deprecated Alias for -machine (which i did use), and -kernel an arch independent shortcut for "put this into ram and jump to it" (which should circumvent all issues from bootloader/EFI)

    – anx
    Feb 11 at 11:53
















0












0








0








I would like to run the Ubuntu installer in qemu. I have used the kernel from the respective Ubuntu CD images and have verified my command line using the AMD64 architecture:



$ qemu-system-x86_64 --version
QEMU emulator version 2.5.0 ..
$ isoinfo -R -x "/install/vmlinuz" -i bionic-server-amd64.iso >linux
$ qemu-system-x86_64 -nodefaults -nographic -kernel linux
-serial stdio -append "console=ttyS0"
-machine pc -cpu qemu64 -m 1G
[ 0.0000000] Linux version 4.15.0-44-generic ..


However, when I try the same thing for ARM64 architecture (not my host arch):



$ qemu-system-aarch64 --version
QEMU emulator version 2.5.0 ..
$ isoinfo -R -x "/install/vmlinuz" -i bionic-server-arm64.iso >linux
$ qemu-system-aarch64 -nodefaults -nographic -kernel linux
-serial stdio -append "console=ttyAMA0"
-machine virt -cpu cortex-a53 -m 1G


I get zero output at 100% cpu usage. How can i determine what went wrong?



Executing with -d unimp -D debug.log reveals:



read access to unsupported AArch64 system register op0:3 op1:0 crn:0 crm:7 op2:2









share|improve this question














I would like to run the Ubuntu installer in qemu. I have used the kernel from the respective Ubuntu CD images and have verified my command line using the AMD64 architecture:



$ qemu-system-x86_64 --version
QEMU emulator version 2.5.0 ..
$ isoinfo -R -x "/install/vmlinuz" -i bionic-server-amd64.iso >linux
$ qemu-system-x86_64 -nodefaults -nographic -kernel linux
-serial stdio -append "console=ttyS0"
-machine pc -cpu qemu64 -m 1G
[ 0.0000000] Linux version 4.15.0-44-generic ..


However, when I try the same thing for ARM64 architecture (not my host arch):



$ qemu-system-aarch64 --version
QEMU emulator version 2.5.0 ..
$ isoinfo -R -x "/install/vmlinuz" -i bionic-server-arm64.iso >linux
$ qemu-system-aarch64 -nodefaults -nographic -kernel linux
-serial stdio -append "console=ttyAMA0"
-machine virt -cpu cortex-a53 -m 1G


I get zero output at 100% cpu usage. How can i determine what went wrong?



Executing with -d unimp -D debug.log reveals:



read access to unsupported AArch64 system register op0:3 op1:0 crn:0 crm:7 op2:2






16.04 virtualization qemu arm64






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Feb 9 at 7:34









anxanx

1,22611333




1,22611333













  • Don't you always need to set -M and prepare a pflash and such for arm64, like described here ?

    – Christian Ehrhardt
    Feb 11 at 7:10











  • @ChristianEhrhardt afaik -M is just a deprecated Alias for -machine (which i did use), and -kernel an arch independent shortcut for "put this into ram and jump to it" (which should circumvent all issues from bootloader/EFI)

    – anx
    Feb 11 at 11:53





















  • Don't you always need to set -M and prepare a pflash and such for arm64, like described here ?

    – Christian Ehrhardt
    Feb 11 at 7:10











  • @ChristianEhrhardt afaik -M is just a deprecated Alias for -machine (which i did use), and -kernel an arch independent shortcut for "put this into ram and jump to it" (which should circumvent all issues from bootloader/EFI)

    – anx
    Feb 11 at 11:53



















Don't you always need to set -M and prepare a pflash and such for arm64, like described here ?

– Christian Ehrhardt
Feb 11 at 7:10





Don't you always need to set -M and prepare a pflash and such for arm64, like described here ?

– Christian Ehrhardt
Feb 11 at 7:10













@ChristianEhrhardt afaik -M is just a deprecated Alias for -machine (which i did use), and -kernel an arch independent shortcut for "put this into ram and jump to it" (which should circumvent all issues from bootloader/EFI)

– anx
Feb 11 at 11:53







@ChristianEhrhardt afaik -M is just a deprecated Alias for -machine (which i did use), and -kernel an arch independent shortcut for "put this into ram and jump to it" (which should circumvent all issues from bootloader/EFI)

– anx
Feb 11 at 11:53












1 Answer
1






active

oldest

votes


















0














Just upgrade your system.



Both AMD64 and ARM64 kernels start exactly as attempted in question using QEMU emulator version 3.1.0



Note that the command line is not exactly the same though, console=ttyS0 translates to console=ttyAMA0 on ARM. To really start subiquity, add -initrd initrd -cdrom bionic-server-arm64.iso




  • extract using isoinfo -R -x "/install/initrd.gz" -i bionic-server-arm64.iso >initrd (verify results - isoinfo will not fail verbosely)

  • loading from ISO will be slow, adding virtio & more cores may result in significant speedup

  • when adding a preseed file, note the cdrom mount location, e.g. file=/cdrom/preseed/example.seed






share|improve this answer
























    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "89"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1116867%2fhow-to-start-subiquity-in-qemu-on-arm64%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    Just upgrade your system.



    Both AMD64 and ARM64 kernels start exactly as attempted in question using QEMU emulator version 3.1.0



    Note that the command line is not exactly the same though, console=ttyS0 translates to console=ttyAMA0 on ARM. To really start subiquity, add -initrd initrd -cdrom bionic-server-arm64.iso




    • extract using isoinfo -R -x "/install/initrd.gz" -i bionic-server-arm64.iso >initrd (verify results - isoinfo will not fail verbosely)

    • loading from ISO will be slow, adding virtio & more cores may result in significant speedup

    • when adding a preseed file, note the cdrom mount location, e.g. file=/cdrom/preseed/example.seed






    share|improve this answer




























      0














      Just upgrade your system.



      Both AMD64 and ARM64 kernels start exactly as attempted in question using QEMU emulator version 3.1.0



      Note that the command line is not exactly the same though, console=ttyS0 translates to console=ttyAMA0 on ARM. To really start subiquity, add -initrd initrd -cdrom bionic-server-arm64.iso




      • extract using isoinfo -R -x "/install/initrd.gz" -i bionic-server-arm64.iso >initrd (verify results - isoinfo will not fail verbosely)

      • loading from ISO will be slow, adding virtio & more cores may result in significant speedup

      • when adding a preseed file, note the cdrom mount location, e.g. file=/cdrom/preseed/example.seed






      share|improve this answer


























        0












        0








        0







        Just upgrade your system.



        Both AMD64 and ARM64 kernels start exactly as attempted in question using QEMU emulator version 3.1.0



        Note that the command line is not exactly the same though, console=ttyS0 translates to console=ttyAMA0 on ARM. To really start subiquity, add -initrd initrd -cdrom bionic-server-arm64.iso




        • extract using isoinfo -R -x "/install/initrd.gz" -i bionic-server-arm64.iso >initrd (verify results - isoinfo will not fail verbosely)

        • loading from ISO will be slow, adding virtio & more cores may result in significant speedup

        • when adding a preseed file, note the cdrom mount location, e.g. file=/cdrom/preseed/example.seed






        share|improve this answer













        Just upgrade your system.



        Both AMD64 and ARM64 kernels start exactly as attempted in question using QEMU emulator version 3.1.0



        Note that the command line is not exactly the same though, console=ttyS0 translates to console=ttyAMA0 on ARM. To really start subiquity, add -initrd initrd -cdrom bionic-server-arm64.iso




        • extract using isoinfo -R -x "/install/initrd.gz" -i bionic-server-arm64.iso >initrd (verify results - isoinfo will not fail verbosely)

        • loading from ISO will be slow, adding virtio & more cores may result in significant speedup

        • when adding a preseed file, note the cdrom mount location, e.g. file=/cdrom/preseed/example.seed







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Mar 20 at 4:44









        anxanx

        1,22611333




        1,22611333






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Ask Ubuntu!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1116867%2fhow-to-start-subiquity-in-qemu-on-arm64%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Human spaceflight

            Can not write log (Is /dev/pts mounted?) - openpty in Ubuntu-on-Windows?

            File:DeusFollowingSea.jpg