[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Listing the tools required for Xen development/testing on x86 and Arm by the community
 
- To: Ayan Kumar Halder <ayankuma@xxxxxxx>
 
- From: Christopher Clark <christopher.w.clark@xxxxxxxxx>
 
- Date: Fri, 2 Jun 2023 02:34:22 -0700
 
- Cc: "jbeulich@xxxxxxxx" <jbeulich@xxxxxxxx>, andrew.cooper3@xxxxxxxxxx, 	nathan.studer@xxxxxxxxxxxxxxx, Stewart Hildebrand <stewart@xxxxxxx>, 	Stefano Stabellini <sstabellini@xxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, 	Bertrand Marquis <Bertrand.Marquis@xxxxxxx>, 	"Volodymyr_Babchuk@xxxxxxxx" <Volodymyr_Babchuk@xxxxxxxx>, Rahul Singh <rahul.singh@xxxxxxx>, 	Henry Wang <Henry.Wang@xxxxxxx>, Doug Goldstein <cardoe@xxxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>, 	dfaggioli@xxxxxxxx, elena.ufimtseva@xxxxxxxxxx, anthony.perard@xxxxxxxxxx, 	george.dunlap@xxxxxxxxxx, rosbrookn@xxxxxxxxx, lukasz@xxxxxxxxxxx, 	dpsmith@xxxxxxxxxxxxxxxxxxxx, mateusz.mowka@xxxxxxxxx, kevin.tian@xxxxxxxxx, 	jun.nakajima@xxxxxxxxx, paul@xxxxxxx, 	Roger Pau Monné <roger.pau@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, 	konrad.wilk@xxxxxxxxxx, ross.lagerwall@xxxxxxxxxx, 	samuel.thibault@xxxxxxxxxxxx, christian.lindig@xxxxxxxxxx, 	mengxu@xxxxxxxxxxxxx, tamas@xxxxxxxxxxxxx, aisaila@xxxxxxxxxxxxxxx, 	ppircalabu@xxxxxxxxxxxxxxx, 	"xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, 	"Stabellini, Stefano" <stefano.stabellini@xxxxxxx>, "Garhwal, Vikram" <vikram.garhwal@xxxxxxx>, 	Xenia.Ragiadakou@xxxxxxx, Stewart Hildebrand <stewart.hildebrand@xxxxxxx>
 
- Delivery-date: Fri, 02 Jun 2023 09:34:45 +0000
 
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
 
 
 
 
 Hi Xen developers, 
 
We are trying to better document xen project development processes and  
related tools. At present, we are targeting **x86 and Arm** only. 
 
These tools range from bug/change request tracking means, compilers,  
infra, editors, code-review tools, etc which is connected in some way to  
the Xen development and is being currently used by xen-devel community. 
 
I appreciate if you can let me know anything I missed or mistaken and  
the version currently being used (for some of the tools).
  
 
 
 
 The Xen git tree contains a README file with some of the information that you are looking for. This link is to that file for the 4.17 release: 
 
 The README specifies specific minimum compiler versions for that Xen release.   
 
 
1. Code management portal - xenbits (https://xenbits.xenproject.org),  
gitlab (https://gitlab.com/xen-project/xen)
  
 
   
 
2. Project description - wiki.xenproject.org 
 
3. Project management - gitlab 
 
4. Code review - text based email clients (mutt, thunderbird), git-email, b4 
 
5. Text Editors such as vim, emacs 
 
6. Code review history - xen-devel mail archives 
 
7. Code revision management - git 
 
8. Xen coding language - C89, C99, Kconfig
  
 
 The Xen community also has tools written in Python, OCaml, Go, and Rust.   
 
9. Testing tools for Arm64 in gitlab CI 
 
compiler - gcc-9.3.0 (Alpine 3.12)) (most commonly used version) 
 
binutils - GNU Binutils for Debian) 2.38.9 
 
emulator/hw - qemu-system-aarch64-6.0.0, qemuarm64 6.2.0 (From yocto,  
poky disto - 4.0.5), zcu102 (**need the uboot, TF-A versions **) 
 
dom0/domU kernel - kernel-5.19.0 
 
rootfs - alpine-3.12-arm64-rootfs 
 
firmware - U-Boot 2022.10 
 
10. Testing tools for Arm in gitlab CI 
 
compiler - arm-poky-linux-gnueabi-gcc (GCC) 11.3.0,  
arm-linux-gnueabihf-gcc (Debian 12.2.0-14) 12.2.0 (most commonly used  
versions) 
 
emulator/hw - qemu-system-arm 6.2.0 (From yocto, poky disto - 4.0.5) 
 
dom0/domU kernel - kernel-5.15.72 (from Yocto), Kernel-5.10.0-22 (from  
Debian) 
 
rootfs - alpine-minirootfs-3.15.1-armhf.tar.gz 
 
firmware - U-Boot 2022.10 
 
11. Testing tools for x86 
 
compiler - gcc-9.3.0 (Alpine Linux 9.3.0), gcc (Debian 12.2.0-14)  
12.2.0, clang (from Debian) (most commonly used version) 
 
binutils - GNU ld (GNU Binutils for Debian) 2.40) 
 
emulator/hardware - Qubes HW (**need details regarding machine,  
firmware, etc**) , qemu 6.2.0 (From yocto, poky distro - 4.0.5) 
 
dom0/domU kernel - kernel 6.1.19 
 
rootfs - alpine-3.12-rootfs 
 
firmware - BIOS Dasharo (coreboot+UEFI) v1.1.1 02/22/2023 , EFI v2.70 by  
EDK II , SMBIOS 3.3.0 , SeaBIOS (version rel-1.16.2-0-gea1b7a0-Xen),  
GRUB 2.06~rc1 
 
12. Debugger - gdb
  
 
  There is a tools/debugger directory in the Xen git tree that contains:  gdbsx, a gdb server for Xen, and kdd, a tool for debugging Xen with the windows kernel debugger. 
 
 
 
13. Xen code building infra - make 
 
14. Testing OS - CentOS 7, Ubuntu, OpenSuse, Arch Linux, Alpine 3.12.12,  
Debian 10 (Buster), Fedora 
 
( **I could not get the version info for some of these ^^^**)
  
 
 Yocto and OpenEmbedded releases contain support for building Xen guest OS images suitable for testing. 
 
 Devuan, FreeBSD and OpenBSD.   
 
15. Testing Infra - Gitlab runner, Docker 
 
16. Testing tools common to all architectures - All the host OS packages 
 
dtc, build-essential, zlib1g-dev, libncurses5-dev, libssl-dev,  
python-dev, python3-dev, xorg-dev, uuid-dev, libyajl-dev, libaio-dev,  
libglib2.0-dev, libpixman-1-dev, pkg-config, flex, bison, gettext,  
acpica-tools, bin86, bcc, liblzma-dev, libc6-dev-i386, libnl-3-dev,  
ocaml-nox, libfindlib-ocaml-dev, markdown, transfig, pandoc,  
checkpolicy, wget, nasm, mkimage, uboot-tools 
 
17. Documentation related tools - doxygen, rst.
  
 
 Possibly: Sphinx   
 
 
Did I miss anything ?
  
 
 I think you have a good start! 
 
 best, Christopher 
 
   
 
Kind regards, 
 
Ayan 
 
 
 
 
  
 
    
     |