[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v4 4/6] automation: switch to a wifi card on ADL system



On Fri, 24 Nov 2023, Marek Marczykowski-Górecki wrote:
> Switch to a wifi card that has registers on a MSI-X page. This tests the
> "x86/hvm: Allow writes to registers on the same page as MSI-X table"
> feature. Switch it only for HVM test, because MSI-X adjacent write is
> not supported on PV.
> 
> This requires also including drivers and firmware in system for tests.
> Remove firmware unrelated to the test, to not increase initrd size too
> much (all firmware takes over 100MB compressed).
> And finally adjusts test script to handle not only eth0 as a test device,
> but also wlan0 and connect it to the wifi network.
> 
> Signed-off-by: Marek Marczykowski-Górecki <marmarek@xxxxxxxxxxxxxxxxxxxxxx>

Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>


> ---
> This needs two new gitlab variables: WIFI_HW2_SSID and WIFI_HW2_PSK. I'll
> provide them in private.
> 
> This change requires rebuilding test containers.
> 
> This can be applied only after QEMU change is committed. Otherwise the
> test will fail.
> ---
>  automation/gitlab-ci/test.yaml                      | 4 ++++
>  automation/scripts/qubes-x86-64.sh                  | 7 +++++++
>  automation/tests-artifacts/alpine/3.18.dockerfile   | 7 +++++++
>  automation/tests-artifacts/kernel/6.1.19.dockerfile | 2 ++
>  4 files changed, 20 insertions(+)
> 
> diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
> index 6aabdb9d156f..931a8fb28e1d 100644
> --- a/automation/gitlab-ci/test.yaml
> +++ b/automation/gitlab-ci/test.yaml
> @@ -195,6 +195,10 @@ adl-pci-pv-x86-64-gcc-debug:
>  
>  adl-pci-hvm-x86-64-gcc-debug:
>    extends: .adl-x86-64
> +  variables:
> +    PCIDEV: "00:14.3"
> +    WIFI_SSID: "$WIFI_HW2_SSID"
> +    WIFI_PSK: "$WIFI_HW2_PSK"
>    script:
>      - ./automation/scripts/qubes-x86-64.sh pci-hvm 2>&1 | tee ${LOGFILE}
>    needs:
> diff --git a/automation/scripts/qubes-x86-64.sh 
> b/automation/scripts/qubes-x86-64.sh
> index 7eabc1bd6ad4..60498ef1e89a 100755
> --- a/automation/scripts/qubes-x86-64.sh
> +++ b/automation/scripts/qubes-x86-64.sh
> @@ -94,6 +94,13 @@ on_reboot = "destroy"
>      domU_check="
>  set -x -e
>  interface=eth0
> +if [ -e /sys/class/net/wlan0 ]; then
> +    interface=wlan0
> +    set +x
> +    wpa_passphrase "$WIFI_SSID" "$WIFI_PSK" > /etc/wpa_supplicant.conf
> +    set -x
> +    wpa_supplicant -B -iwlan0 -c /etc/wpa_supplicant.conf
> +fi
>  ip link set \"\$interface\" up
>  timeout 30s udhcpc -i \"\$interface\"
>  pingip=\$(ip -o -4 r show default|cut -f 3 -d ' ')
> diff --git a/automation/tests-artifacts/alpine/3.18.dockerfile 
> b/automation/tests-artifacts/alpine/3.18.dockerfile
> index f1b4a8b7a191..b821a291fed3 100644
> --- a/automation/tests-artifacts/alpine/3.18.dockerfile
> +++ b/automation/tests-artifacts/alpine/3.18.dockerfile
> @@ -34,6 +34,13 @@ RUN \
>    apk add curl && \
>    apk add udev && \
>    apk add pciutils && \
> +  apk add wpa_supplicant && \
> +  # Select firmware for hardware tests
> +  apk add linux-firmware-other && \
> +  mkdir /lib/firmware-preserve && \
> +  mv /lib/firmware/iwlwifi-so-a0-gf-a0* /lib/firmware-preserve/ && \
> +  rm -rf /lib/firmware && \
> +  mv /lib/firmware-preserve /lib/firmware && \
>    \
>    # Xen
>    cd / && \
> diff --git a/automation/tests-artifacts/kernel/6.1.19.dockerfile 
> b/automation/tests-artifacts/kernel/6.1.19.dockerfile
> index 3a4096780d20..84ed5dff23ae 100644
> --- a/automation/tests-artifacts/kernel/6.1.19.dockerfile
> +++ b/automation/tests-artifacts/kernel/6.1.19.dockerfile
> @@ -32,6 +32,8 @@ RUN curl -fsSLO 
> https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-"$LINUX_VERSI
>      make xen.config && \
>      scripts/config --enable BRIDGE && \
>      scripts/config --enable IGC && \
> +    scripts/config --enable IWLWIFI && \
> +    scripts/config --enable IWLMVM && \
>      cp .config .config.orig && \
>      cat .config.orig | grep XEN | grep =m |sed 's/=m/=y/g' >> .config && \
>      make -j$(nproc) bzImage && \
> -- 
> git-series 0.9.1
> 

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.