Tags

Tags give the ability to mark specific points in history as being important
  • split-accel-rfc-v13

    $ ../configure \
      --disable-docs --enable-debug-info \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.get-task-allow</key>
        <true/>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 2 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\* \
      -serial tcp::4444,server=on
  • split-accel-rfc-v12

    $ ../configure \
      --disable-docs --enable-debug-info \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.get-task-allow</key>
        <true/>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 2 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\* \
      -serial tcp::4444,server=on
  • split-accel-rfc-v11

    $ ../configure \
      --disable-docs  --enable-debug \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 2 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\* \
      -serial tcp::4444,server=on
  • split-accel-rfc-v10

    $ ../configure \
      --disable-docs  --enable-debug \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 2 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\* \
      -serial tcp::4444,server=on
  • split-accel-rfc-v9

    $ ../configure \
      --disable-docs  --enable-debug \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 2 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\* \
      -serial tcp::4444,server=on
  • split-accel-rfc-v8

    $ ../configure \
      --disable-docs  --enable-debug \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 2 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\* \
      -serial tcp::4444,server=on
  • split-accel-rfc-v7

    $ ../configure \
      --disable-docs  --enable-debug \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 2 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\* \
      -serial tcp::4444,server=on
  • split-accel-rfc-v6

    $ ../configure \
      --disable-docs  --enable-debug \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 1 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\*
      -serial tcp::4444,server=on
  • split-accel-rfc-v5

    $ ../configure \
      --disable-docs  --enable-debug \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 1 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\*
      -serial tcp::4444,server=on
  • split-accel-rfc-v4

    $ ../configure \
      --disable-docs  --enable-debug \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 1 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\*
      -serial tcp::4444,server=on
  • split-accel-rfc-v3

    $ ../configure \
      --disable-docs  --enable-debug \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf --enable-split \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 1 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\*
      -serial tcp::4444,server=on
  • split-accel-rfc-v2

    $ ../configure \
      --disable-docs  --enable-debug \
      --target-list=aarch64-softmmu \
      --enable-tcg --enable-hvf --enable-split \
      --disable-plugins
    
    $ cat > entitlements.plist << 'EOF'
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>com.apple.security.hypervisor</key>
        <true/>
    </dict>
    </plist>
    EOF
    
    $ ninja qemu-system-aarch64 && \
      codesign -s - --entitlements entitlements.plist -f ./qemu-system-aarch64-unsigned
    
    $ ./qemu-system-aarch64-unsigned \
      -accel split \
      -machine type=virt,virtualization=on,gic-version=max \
      -m 2048 \
      -cpu host -smp 1 \
      -kernel ~/Downloads/Image-6.14.5+initramfs_with_kvm_unit_tests \
      -append "console=ttyAMA0" -trace hvf\* -trace arm_gt\*
      -serial tcp::4444,server=on
  • single-binary-hw-arm-rfc-v5

    single-binary: Make hw/arm/ common
    
    Since v4:
    - Add DEFINE_MACHINE_WITH_INTERFACES (Zoltan)
    - Use GPtrArray for get_valid_cpu_type (Richard)
    - Define InterfaceInfo[] arrays (Richard)
    - Collect R-b tags
    
    Since v3:
    - QAPI structure renamed as QemuTargetInfo
    - MachineClass::get_valid_cpu_types() runtime
    - target_aarch64() checking SysEmuTarget value
    - Remove CONFIG_TCG #ifdef'ry in hw/arm/
    
    Since v2:
    - More comments from Pierrick addressed
    - Use GList to register valid CPUs list
    - Remove all TARGET_AARCH64 uses in hw/arm/
    
    Since v1:
    - Dropped unrelated / irrelevant patches
    - Addressed Pierrick comments
    - Added R-b tag
    - Only considering machines, not CPUs.
    
    Available here, based on my pending patch queue:
    https://gitlab.com/philmd/qemu/-/tags/single-binary-hw-arm-rfc-v5
  • single-binary-hw-arm-rfc-v4

    single-binary: Make hw/arm/ common
    
    Since v3
    - QAPI structure renamed as QemuTargetInfo
    - MachineClass::get_valid_cpu_types() runtime
    - target_aarch64() checking SysEmuTarget value
    - Remove CONFIG_TCG #ifdef'ry in hw/arm/
    
    Since v2:
    - More comments from Pierrick addressed
    - Use GList to register valid CPUs list
    - Remove all TARGET_AARCH64 uses in hw/arm/
    
    Since v1:
    - Dropped unrelated / irrelevant patches
    - Addressed Pierrick comments
    - Added R-b tag
    - Only considering machines, not CPUs.
    
    Hi,
    
    At this point this series is mostly a draft for Pierrick.
    
    After introducing the generic TargetInfo API [*], we implement
    the ARM variants, then use the API to remove target-specific code,
    allowing to eventually remove the target-specific arm_ss[] source
    set in meson.build, having all objects in arm_common_ss[].
    
    Regards,
    
    Phil.
    
    Available here, based on tcg-next:
    https://gitlab.com/philmd/qemu/-/tags/single-binary-hw-arm-rfc-v4
  • single-binary-hw-arm-rfc-v3

    single-binary: Make hw/arm/ common
    
    Since v2:
    - More comments from Pierrick addressed
    - Use GList to register valid CPUs list
    - Remove all TARGET_AARCH64 uses in hw/arm/
    
    Since v1:
    - Dropped unrelated / irrelevant patches
    - Addressed Pierrick comments
    - Added R-b tag
    - Only considering machines, not CPUs.
    
    Hi,
    
    At this point this series is mostly a draft for Pierrick.
    
    After introducing the generic TargetInfo API [*], we implement
    the ARM variants, then use the API to remove target-specific code,
    allowing to eventually remove the target-specific arm_ss[] source
    set in meson.build, having all objects in arm_common_ss[].
    
    Regards,
    
    Phil.
    
    Available here, based on tcg-next:
    https://gitlab.com/philmd/qemu/-/tags/single-binary-hw-arm-rfc-v3