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

Re: [RFC PATCH v3 2/2] ci: enable fuzzing for arm64


  • To: Stefano Stabellini <sstabellini@xxxxxxxxxx>
  • From: Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>
  • Date: Mon, 12 May 2025 19:10:07 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=epam.com; dmarc=pass action=none header.from=epam.com; dkim=pass header.d=epam.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=/YMPW7tJu+uzWqePJs8vFaT2grT4+YrvXbt7LpugvS0=; b=pCAwffDMVbyk6rO0gtsiyuGbfNSRqu2QLRVBxFXpO2pBUOhl5RMMztSrWkjGBSX/4uKjPxEybs/zXrqU/RcK1KupYO10Tagx9V/8h1lDnB7ZTTrZA/Vg4+6/03zS5umyGzl1HqWYg5iLWDUPETmUVmvF1aj3M5A4XAxtXjhlyBLPBz4xrYVa2FzSqGgGxT1AVw9Kw0pLfWcjabaM6hXGo0Ui5kLil9IFba1crxOa5otJ1GX/zFpkKkcLyctUcuadnMODT5H2mA+IskSLu3TrmLSAri6XyTHPcRQSQWP5t07Ja/4idPMGaxHSkO3fqcDY2CmTqIncPImUVIBlIYJMQg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=o8xABaBBseaC1swSRRJ0PVBzPNxfSfXKilDAsICdzLiz54PnQdlG/Pl2FoLNZQqPiBC2EZElXG1y6pWReFdGLGrg+7V3ndR6CUAXu0Q4bi4B8YRGzmUHMh96Mj6JC5HTe3DowW9ikl4+NTv9mGdImHcws/XpeVzMnlghmjnRPa54jv+P405OzkhUHXqvDggLdY59Uj5uMFgw5FTGf88T3i3dWHkR3wBlJ4E+zEP1KLc4AXhM/MYqjyusMV3SYQQniFC8zIdbFS1ANmKHYJR97MRqfeMix5MBSH8jtypPjQKMgfEucjk3WJRXFFEo5jLGpGi53EED0jmCAD7W4+6UoQ==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=epam.com;
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Doug Goldstein <cardoe@xxxxxxxxxx>
  • Delivery-date: Mon, 12 May 2025 19:10:27 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHbvzX0DP4RwWsFtkCwrnnT9nV/Vg==
  • Thread-topic: [RFC PATCH v3 2/2] ci: enable fuzzing for arm64

Hi Stefano,


Stefano Stabellini <sstabellini@xxxxxxxxxx> writes:

> On Wed, 7 May 2025, Volodymyr Babchuk wrote:

>>  alpine-3.18-gcc-debug-arm64:
>> +  extends: .gcc-arm64-build-debug
>> +  variables:
>> +    CONTAINER: alpine:3.18-arm64v8
>> +    EXTRA_XEN_CONFIG: |
>> +      CONFIG_UBSAN=y
>> +      CONFIG_UBSAN_FATAL=
>
> The diff is strange and I might be wrong, but it looks like this should
> be CONFIG_UBSAN_FATAL=y

Yes, looks like a mistake from my side.

>
>> +alpine-3.18-gcc-fuzzing-arm64:
>>    extends: .gcc-arm64-build-debug
>>    variables:
>>      CONTAINER: alpine:3.18-arm64v8
>>      EXTRA_XEN_CONFIG: |
>>        CONFIG_UBSAN=y
>>        CONFIG_UBSAN_FATAL=y
>> +      CONFIG_FUZZING=y
>> +      CONFIG_FUZZER_LIBAFL_QEMU=y
>> +      CONFIG_FUZZER_PASS_BLOCKING=y
>>  
>>  alpine-3.18-gcc-arm64-randconfig:
>>    extends: .gcc-arm64-build
>> diff --git a/automation/gitlab-ci/test.yaml b/automation/gitlab-ci/test.yaml
>> index a603d4039a..bb8670026f 100644
>> --- a/automation/gitlab-ci/test.yaml
>> +++ b/automation/gitlab-ci/test.yaml
>> @@ -197,6 +197,30 @@
>>    tags:
>>      - qubes-hw11
>>  
>> +.fuzzer-arm:
>> +  stage: test
>> +  image: xentroops/xen-fuzzer:v1
>> +  variables:
>> +    HARNESS: hypercall
>> +    FUZZING_TIME: 600
>> +  rules:
>> +  - if: $SELECTED_JOBS_ONLY && $CI_JOB_NAME =~ $SELECTED_JOBS_ONLY
>> +  - if: $SELECTED_JOBS_ONLY
>> +    when: never
>> +  - when: on_success
>> +  script:
>> +    - cd /root/
>> +    - ./xen_fuzzer -t ${FUZZING_TIME} run ${CI_PROJECT_DIR}/binaries/xen 
>> test-mmu64le-arm-${HARNESS}-fuzzer 2>&1 | tee 
>> ${CI_PROJECT_DIR}/fuzzer-${HARNESS}.log
>
> Can you run it from outside the directory, like this?
>
> /root/xen_fuzzer -t ...
>

Well, right now it is looking for some QEMU files, like firmware image,
relatively to ${CWD}. It is possible to provide the full QEMU
command line along with -L option and then we will be able to run
it from anywhere, but, IMO, it is easier to just change directory.


>> +  after_script:
>> +    - cd ${CI_PROJECT_DIR}
>> +    - mv /root/crashes .
>
> Also here you could probably do:
>
> mv /root/crashes ${CI_PROJECT_DIR}
>

Yes, agree.


-- 
WBR, Volodymyr


 


Rackspace

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